【问题标题】:ORDER BY and UNION are not working together in MySQLORDER BY 和 UNION 在 MySQL 中不能一起工作
【发布时间】:2022-11-12 02:45:17
【问题描述】:

为了使它工作,我必须创建一个子查询并给它们单独的别名。谁能帮我讲道理?

-- 不工作--

SELECT * FROM topstates ORDER BY TopState DESC LIMIT 3
UNION
SELECT * FROM bottomstates ORDER BY BottomState LIMIT 3;

- 在职的 -

SELECT * FROM 
-- had to make a subquery and Aliases (a and b) --
(SELECT * FROM topstates ORDER BY TopState DESC LIMIT 3) as a
UNION
SELECT * FROM 
(SELECT * FROM bottomstates ORDER BY BottomState LIMIT 3) as b;

【问题讨论】:

  • 在第一个版本中,只能有一个有效的ORDER BY 子句,它必须适用于整个查询并且必须位于末尾。

标签: mysql sql subquery sql-order-by union


【解决方案1】:

此问题在此处的 MySQL 文档中有所介绍:https://dev.mysql.com/doc/refman/8.0/en/union.html#union-order-by-limit

【讨论】:

    猜你喜欢
    • 2021-07-11
    • 2018-02-15
    • 2012-01-30
    • 1970-01-01
    • 2014-05-30
    • 2016-11-22
    • 1970-01-01
    • 1970-01-01
    • 2015-09-18
    相关资源
    最近更新 更多