ff表:
+-----------------------------+
+ value| name |Asort +
+-----------------------------+
+ 111 | Alpha |a +
+ 161 | Beta |b +
+ 092 | Delta |c +
+ 141 | Beta |a +
+ 113 | Beta |e +
+ 092 | Delta |f +
+ ... +
+ ... | more items +
+-----------------------------+
+-----------------------------+
+ value| name |Asort +
+-----------------------------+
+ 141 | Beta |a +
+ 161 | Beta |b +
+ 113 | Beta |c +
+ ... +
+ ... | more items(Beta) +
+-----------------------------+
我想要回归" 3" as" 113"行位置,按名称分组,按Asort排序ASC
答案 0 :(得分:0)
您需要使用变量来计算排名(row-number-in-mysql),因为mySql没有ROW_NUMBER
。
SELECT ff.*,
@rownum := @rownum + 1 AS rank
FROM ff,
(SELECT @rownum := 0) r
WHERE name = 'Beta'
ORDER BY Asort