数据库
首页 > 数据库> > 如何在MYSQL中使用Partition获取RowNumber()

如何在MYSQL中使用Partition获取RowNumber()

作者:互联网

带有MYSQL分区的RowNumber()

我想要基于id-Foreign键的以下输出

 id | Name | rownumber
 1     a      1
 1     b      2
 1     ads    3    
 2    dsfs    1  
 2    sadf    2
 2    sdfsa   3
 2    dfsfs   4 
 3     dsf    1
 3     adsf   2
 3     sdd    3 

解决方法:

我几乎不明白你的意思. mysql中没有RowNumber()函数,partitioning与您的请求无关.

它的:

SELECT 
  t.*, 
  @cur:= IF(id=@id, @cur+1, 1) AS RowNumber, 
  @id := id 
FROM 
  t CROSS JOIN 
    (SELECT @id:=(SELECT MIN(id) FROM t), @cur:=0) AS init 
ORDER BY 
  t.id

标签:row-number,mysql
来源: https://codeday.me/bug/20190927/1824725.html