【问题标题】:Order by and if some are the same then order by something else in SQL按顺序排序,如果有些相同,则按 SQL 中的其他内容排序
【发布时间】:2014-07-28 15:44:15
【问题描述】:

您好,我希望对我网站上的玩家表进行排序。

例如,人们在预测分数,我已经设置好一切并且工作正常,但想知道是否可以设置一个订单,如果订单有 2 个相同,那么用别的东西给他们排序 2。

例如,这里是我用来订购的查询。

"SELECT * FROM league ORDER BY points DESC";

现在,如果一个用户有相同的分数,那么我想计算净胜球数,如果相同,则计算进球数,如果相同,最后计算人名。

这可能在 sql 中还是我需要的 php 算法?

谢谢

【问题讨论】:

    标签: php mysql sql sql-order-by


    【解决方案1】:

    您只需要在多个列上进行排序。

    SELECT *
    FROM league
    ORDER BY points DESC, goalDiff DESC, goalsScored DESC, playerName
    

    【讨论】:

    • 我不知道你可以像这样嵌套一个 orderby。谢谢
    • 错误信息到底是什么?此外,ASC 是默认设置,因此您可以选择不使用它。
    【解决方案2】:

    请参阅下面的语法-

    SELECT column-list 
    FROM table_name 
    [WHERE condition] 
    [ORDER BY column1, column2, .. columnN] [ASC | DESC];
    

    更多详情请查看link

    希望这会对您有所帮助。快乐编码:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-06
      • 1970-01-01
      • 2021-06-27
      • 1970-01-01
      • 2011-02-03
      • 2022-01-24
      • 2021-05-29
      • 1970-01-01
      相关资源
      最近更新 更多