1

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 
4

2 に答える 2

4

私はあなたの意味をほとんど理解していませんでした。RowNumber()mysql には機能がなく、パーティショニングはリクエストとは関係ありません。

これは:

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
于 2013-10-25T12:28:31.290 に答える