mysql查询排名问题

卿久久丶 2017-09-18 03:02:52
SELECT * FROM (SELECT
obj.userId,
obj.allAsset,
CASE
WHEN @rowtotal = obj.allAsset THEN
@rownum
WHEN @rowtotal := obj.allAsset THEN
@rownum := @rownum + 1
WHEN @rowtotal = 0 THEN
@rownum := @rownum + 1
END AS rownum
FROM
(
SELECT
userId,
allAsset
FROM
`UserAsset` ORDER BY allAsset DESC
) AS obj ,
(SELECT @rownum := 0 ,@rowtotal := NULL) r) AS R
5.5.56版本通过此查询查询出来的数据不正确,5.7查询出来的数据是正确的
下边是数据库表信息

...全文
248 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
卿久久丶 2017-09-18
  • 打赏
  • 举报
回复
引用 1 楼 sinat_28984567 的回复:
建议楼主到mysql版问问,这里是mssql版,对mysql各个版本的属性可能不熟悉。
谢谢老哥提醒,自己没有看清楚。
二月十六 2017-09-18
  • 打赏
  • 举报
回复
建议楼主到mysql版问问,这里是mssql版,对mysql各个版本的属性可能不熟悉。

22,301

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧