【问题标题】:mysql order by values and then show the rest [duplicate]mysql按值排序,然后显示其余的[重复]
【发布时间】:2013-05-04 23:27:42
【问题描述】:

我想订购一个mysql查询的结果

1) 显示符合给定条件的第一个条目并随机排序

2) 然后显示按日期顺序排序的其余结果

我已经试过了:

Select * from post inner join user on post.user_id = user.id order by user.type = "top" desc, created desc;

非常感谢

【问题讨论】:

  • 您需要编写 2 个选择并在它们之间使用联合
  • 实际上我的目标是在没有联合的情况下执行此操作,因为此查询是复杂过滤操作的一部分,也许您还有其他选择,但非常感谢您的提示

标签: mysql


【解决方案1】:

使用case 声明

select * from post 
inner join user on post.user_id = user.id 
order by case when user.type = 'top' 
              then 1 
              else 2 
         end asc, 
         created desc;

【讨论】:

  • 很好,完美运行
猜你喜欢
  • 2015-10-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-06
  • 1970-01-01
  • 2022-01-19
  • 2016-01-23
  • 2011-11-22
相关资源
最近更新 更多