mysql查询顺序由多个项目组成

Ale*_*der 91 mysql sql-order-by

可以按多行排序吗?

我希望我的用户按last_activity排序,但同时,我希望带有图片的用户出现在没有用户之前

像这样的东西:

SELECT some_cols
FROM `prefix_users`
WHERE (some conditions)
ORDER BY last_activity, pic_set DESC;
Run Code Online (Sandbox Code Playgroud)

iho*_*rko 132

SELECT some_cols
FROM prefix_users
WHERE (some conditions)
ORDER BY pic_set DESC, last_activity;
Run Code Online (Sandbox Code Playgroud)


eum*_*iro 14

按照图片排序,然后按活动排序:

SELECT some_cols
FROM `prefix_users`
WHERE (some conditions)
ORDER BY pic_set, last_activity DESC;
Run Code Online (Sandbox Code Playgroud)

  • 亚历山大,我相信你可以做`ORDER BY pic_set DESC,last_activity DESC`或`ORDER BY pic_set DESC,last_activity ASC`所以每列的排序方向,mysql中的默认排序方向(默认配置)是ASC. (5认同)
  • 我不明白,DESC去哪了?每个项目背后? (2认同)
  • 是.您可能想要从最新到最旧订购`last_activity`.如果你解释如何定义图片(`pic_set`代表什么),我可以告诉你如何对这个属性进行排序. (2认同)

小智 9

SELECT id, user_id, video_name
FROM sa_created_videos
ORDER BY LENGTH(id) ASC, LENGTH(user_id) DESC
Run Code Online (Sandbox Code Playgroud)