這個問題源於SF上的一個問題:
字段
id,shares // 分享次數
記錄
1, 2
2, 0
3, 1
4, 0,
5, 1
需求 計算某條記錄的分享排行
假設計算id 2 的分享排行 則是4
sql 能算出某條記錄的 分享排行嗎?
SQLServer提供了ROW_NUMBER()函數可以實現。
但是mysql沒有提供類似的函數,網上查了點資料,可以利用預定義變量解決。
實驗數據:
mysql有點麻煩,給一下思路,數據表如下:
mysql沒有像sql server一樣提供記錄行數的函數,但可以用預定義變量實現:
全部排名之後,可以查詢特定的一條記錄的排名