【问题标题】:MySQL order by two columns once after each other with limit?MySQL按两列顺序排列一次并有限制?
【发布时间】:2016-02-12 10:37:24
【问题描述】:

我尝试使用单个 SQL 查询来排序此查询结果

SELECT * FROM table ORDER BY value1 DESC limit 20

第二个值,比如 value2 ASC 。只对上述查询的 20 条结果进行排序,不出现其他结果。

我尝试了很多ODER BYGROUP BY 但没有成功.. 谁能赐教我?

【问题讨论】:

    标签: mysql subquery limit


    【解决方案1】:

    使用subselect(也称为here):

    SELECT * FROM (
        SELECT * FROM table ORDER BY value1 DESC limit 20
    ) AS t ORDER BY value2 ASC
    

    【讨论】:

    • 谢谢,但是 MySQL 说“#1248 - 每个派生表都必须有自己的别名”?
    • 谢谢,问题解决了。是的,我还将阅读有关子选择和子查询的文档。现在我知道了正确的关键字,我看到我的问题已经在这里得到了回答。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-27
    • 1970-01-01
    • 2012-10-19
    相关资源
    最近更新 更多