mysql:如何根据其他列对列进行排序




我有一个通知表,希望按read_at列和created_at列进行排序。

通知表

2021年6月21日12:56:122021年6月22日13:12:43//tr>2021年6月23日16:34:452021月24日19:45:222021年6月25-03:12:572021年6月25日20:09:02
id read_at created_at
1
2
3 2021年6月24日19:43:42
4 2021年6月23日17:00:03 21年6月23-16:40:22
5 null 2021年6月24日11:41:32
6 2021年6月24日21:12:12
7 2021年6月25日03:14:08
8 2021年6月25日09:59:22
9 2021年6月25日12:41:40 21年6月25-日12:41:09
10 2021年6月26日01:59:59

您可以通过布尔表达式read_at IS NULL降序进行排序,该表达式将返回所有read_at位于顶部的null行,然后通过created_at降序(或像预期结果一样升序(进行排序:

ORDER BY read_at IS NULL DESC, created_at DESC -- or ASC ???

我相信这应该能解决你的问题。

现在无法测试。

从通知顺序中选择id、read_at、created_at,如果read_at为null,则1结束desc,created_at desc

相关内容

  • 没有找到相关文章

最新更新