Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 按多列排序未按预期工作_Mysql_Sql - Fatal编程技术网

Mysql 按多列排序未按预期工作

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

我有一个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               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?就像我刚才在编辑的答案中所做的那样?嗨,亲爱的朋友,请写一个有用答案的查询。并了解,如何在这里写一个好答案嗨,亲爱的朋友,请写一个有用答案的查询。以及了解,如何在这里写一个好答案