Closed. This question needs details or clarity。它目前不接受答案。
想改进这个问题吗?添加细节并通过editing this post澄清问题。
去年关门了。
我有一张有球员的桌子。管理员想按条件对玩家进行分类。如果列activerank = 1则播放器添加到排序else Ifactiverank = 2则播放器应显示在播放器的末尾。我该怎么做?
这是我的问题,没有这个条件:
$sql = '
  SELECT c.*
  FROM `child` AS c
  WHERE  '
  c.`id` > 0
  ' ORDER BY c.`rank` DESC ';

最佳答案

您可以按activerank升序使用附加的第一排序

  SELECT c.*
  FROM `child` AS c
  WHERE  '
  c.`id` > 0
  ' ORDER BY activerank ASC,  c.`rank` DESC '

在这个查询中,activerank = 1的玩家将排在第一位,并按等级在其中进行排序,activerank = 2的玩家将排在最后
对于更高级的排序,我建议使用CASE CLAUSE

关于mysql - 带条件的SQL排序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51473611/

10-11 01:47