Mysql 按多列排序未按预期工作
我有一个sql:Mysql 按多列排序未按预期工作,mysql,sql,Mysql,Sql,我有一个sql: GROUP BY dc.year, dc.month, d.user_id ORDER BY dc.year DESC, d.user_id ASC 结果是: UserId Month Year 1 1 2020 1 4 2020 1 2 2020 2
GROUP BY dc.year, dc.month, d.user_id
ORDER BY dc.year DESC, d.user_id ASC
结果是:
UserId Month Year
1 1 2020
1 4 2020
1 2 2020
2 5 2019
2 1 2019
预期结果:
UserId Month Year
1 1 2020
1 2 2020
1 4 2020
2 1 2019
2 5 2019
但我想按月订购,而不仅仅是按年订购。我试着这样按dc.year DESC,dc.month ASC,d排序。用户id ASC
,但未按预期工作,因为我希望按年份描述和月份ASC列出每个用户订单。你能帮我吗
我想按年份描述和月份asc列出每个用户订单
这说明:
ORDER BY d.user_id, dc.year DESC, dc.month
我想按年份描述和月份asc列出每个用户订单
这说明:
ORDER BY d.user_id, dc.year DESC, dc.month
在
orderby
子句中,似乎不需要user\u id
试试这个:
ORDER BY dc.year DESC, d.user_id, dc.month
在
orderby
子句中,似乎不需要user\u id
试试这个:
ORDER BY dc.year DESC, d.user_id, dc.month
按dc.user\U id ASC、dc.MOUNT ASC、dc.year DESC订购 按dc.user\u id ASC、dc.MOUNT ASC、dc.year DESC订购 您可以使用下面的代码按照预期结果获得结果。我已经试过了,并且得到了预期的结果
GROUP BY dc.year, dc.month, d.user_id
order by dc.year DESC, dc.month asc, d.user_id asc
使用解决方案检查图像下方:
您可以使用下面的代码根据预期结果获得结果。我已经试过了,并且得到了预期的结果
GROUP BY dc.year, dc.month, d.user_id
order by dc.year DESC, dc.month asc, d.user_id asc
使用解决方案检查图像下方:
请选择一个rdms@George . . . .编辑你的问题并显示你想要的结果。@GordonLinoff我编辑了问题,请选择一个rdms@George . . . .编辑你的问题并显示你想要的结果。@GordonLinoff我像这样编辑了我想要的问题:2019年所有月订单ASC用户,2018年之后所有月订单ASC用户。现在我有2018年和2019年的每个用户的数据,之后是另一个用户:(我想这样:2019年所有月订单ASC的用户,2018年之后所有月订单ASC的用户。现在我有2018年和2019年的每个用户的数据,之后是另一个用户:(我需要,因为我分组bu用户id,我尝试了你的代码,但没有工作:(好的,更改了我的答案。立即尝试是否尝试切换d.user\u id,dc.month?就像我刚才在编辑的答案中所做的那样?我需要,因为我对bu用户id进行了分组,我尝试了您的代码,但没有工作:(好的,更改了我的答案。立即尝试。你是否尝试切换d.user\u id,dc.month?就像我刚才在编辑的答案中所做的那样?嗨,亲爱的朋友,请写一个有用答案的查询。并了解,如何在这里写一个好答案嗨,亲爱的朋友,请写一个有用答案的查询。以及了解,如何在这里写一个好答案