我有一个包含两个日期的“事件”表:begin_date 和 end_date。 我不知道如何获取按开始日期和结束日期排序的事件列表。
即:如果我有 2 个这样的事件:
name => 'activity1', begin_date => 1:00AM, end_date => 3:00AM
name => 'activity2', begin_date => 2:00AM, end_date => 4:00AM
我喜欢得到:
activity1, 1:00AM, (begin_date)
activity2, 2:00AM, (begin_date)
activity1, 3:00AM, (end_date)
activity2, 4:00AM, (end_date)
这可能吗?我怎样才能在纯 SQL 中做到这一点?
最佳答案
SELECT t.name, t.CombinedDate
FROM (SELECT name, begin_date AS CombinedDate
FROM YourTable
UNION ALL
SELECT name, end_date AS CombinedDate
FROM YourTable) t
ORDER BY t.CombinedDate
关于2列上的Mysql顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8449074/