应该是一个非常简单的问题。我自己做过一些研究,但可以稍微澄清一下。
我有一个体育项目的排名表,根据他们的胜率对联盟中的球队进行排名。这是有问题的:
// Make the query to order each team by rank:
$q = "SELECT * FROM football_1314_beacha_standings ORDER BY pct DESC";
$r = mysqli_query($db, $q);
工作正常。但是,当我有两支具有相同胜率的球队时,它会根据他们的主键命令他们,这是有道理的,但在这种情况下,这不是我想要的。
假设A队是2-0,胜率为.999%,主键为1; B队以6-0获胜,并且拥有相同的胜率和2的主键。我希望拥有更多胜利的球队能够被列在另一个之上。所以,我需要一个二级ORDER BY条件。
我尝试添加逗号并添加第二列名称:
// Make the query to order each team by rank:
$q = "SELECT * FROM football_1314_beacha_standings ORDER BY pct, win DESC";
$r = mysqli_query($db, $q);
这在某种程度上可以让球队获得更多胜利,但由于某种原因,通过将最低胜率的球队置于积分榜的前列来抛出总体顺序。不知道为什么会这样做。
非常感谢任何建议!
答案 0 :(得分:5)
我认为解决方案是:
$q = "SELECT * FROM football_1314_beacha_standings ORDER BY pct DESC, win DESC";
答案 1 :(得分:1)
你需要写两次desc。在“pct”和“win”之后