gpt4 book ai didi

sql - MySQL Order by multiple column combined (not order by field1 asc, field2 asc)

转载 作者:可可西里 更新时间:2023-11-01 06:58:19 25 4
gpt4 key购买 nike

这似乎是一个典型的问题,但它是不同的。

我有一个带有 id 和 3 个时间戳字段的表(简单来说)。最初所有 3 个字段都是空的,并且它们被值填充。行的例子是:

id time1      time2      time3
1 1259625661 1259643563 null
2 null 1259621231 null
3 1259625889 null 1259644511
4 null 1259621231 null
5 null null 1259644511
6 null 1259621231 null
7 1259625889 null null

我需要的是获取按最近时间戳排序的 ID 列表(忽略时间 1、时间 2 或时间 3)。按 time1 desc、time2 desc、time3 desc 排序 给我一个错误的列表,因为它首先对所有 time1 字段进行排序,然后是第二个,依此类推...

预期结果是一个 id 列表。

这可以在 MySQL 中通过单个查询完成吗?谢谢

最佳答案

SELECT  *
FROM mytable
ORDER BY
GREATEST(
COALESCE(time1, 0),
COALESCE(time2, 0),
COALESCE(time3, 0)
) DESC

关于sql - MySQL Order by multiple column combined (not order by field1 asc, field2 asc),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1826820/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com