繁体   English   中英

Mysql自我加入多个订单

[英]Mysql self join with multiple order by

假设我们有桌子

id,标题,日期

我需要构建1个查询:

select date = TODAY, order by id
select data < TODAY, order by date desc,
select data > TODAY, order by date asc,

我认为你需要使用UNION和子查询:

SELECT * FROM (
    SELECT *
    FROM YourTable
    WHERE Date(dateField) = Date(Now())
    ORDER BY ID 
) t1
UNION
SELECT * FROM (
    SELECT *
    FROM YourTable
    WHERE dateField < Now()
    ORDER BY dateField DESC
) t2
UNION
SELECT * FROM (
    SELECT *
    FROM YourTable
    WHERE Date(dateField) > Now()
    ORDER BY dateField 
) t3

这是一个简化的SQL Fiddle示例。

祝好运。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM