请教一个 sql 的问题,怎样根据条件筛选出符合条件的前三条记录,然后剩余的结果集按照时间来排序?

2017-01-07 11:08:53 +08:00
 Kylinsun

目前通过 sql:
select id,brower from fu_questions order by id=64 desc ;得到的结果集如下:

我想把 brower 的前三条显示出来,剩下的就按照时间来排序,一直卡在这里,希望能给个思路。

2123 次点击
所在节点    问与答
4 条回复
Time2
2017-01-07 11:24:58 +08:00
直接暴力的方法:分两次查,先查前三条,再查剩下的按排序,最后组合起来。优雅的办法:楼下继续
wkan
2017-01-07 12:04:06 +08:00
用 union
skydiver
2017-01-07 12:30:15 +08:00
稍微改一下就行了吧 select id,brower from fu_questions order by id=64 desc, time asc:
Kylinsun
2017-01-07 12:34:33 +08:00
@Time2 然而我却想用一条 sql 来查。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/332838

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX