0

以下のもので番号をソートする方法はありますか

GameID   Turn   
3         2
6         1
7         2
5         2
8         0
9         1

return should be { for example GameID 6 is TURN for the Game or Left in the Game }
GameID   Turn
6         1
9         1
8         0
3         2
5         2
7         2

another example { for example GameID 7 is TURN for the Game or Left in the Game }
GameID   Turn
7         2
3         2
5         2
8         0
9         1
6         1

それは私が理解する必要がある単なるサンプルでした. ターンをソートすることは可能ですか?

ORDER BY ターン DESC/ASC は使用できません2 1 0ASC 0 1 2bu 私が理解する必要があるのは、この方法でソートすることです { 0 1 2 } で開始した2場合並べ替えは次のようにする必要があります。2 0 1または、ターン 1 から開始する場合、並べ替えはこのようにする必要があります。1 2 0

何かが私の主張を理解することを願っています...

私はすでにasortを使用していますが、適合しません。ソート用の他のPHP関数はありますか?

ありがとう...

4

2 に答える 2

2

あなたが試すことができますORDER BY FIELD

  SELECT *
    FROM table
ORDER BY FIELD(Turn, 1, 0, 2) ASC
 --                           DESC
于 2012-08-31T11:51:06.873 に答える
0
SELECT 
  GameID,Turn
FROM yourtableorview
WHERE yourcriteria
ORDER BY IF(Turn<$startturn,Turn+99999999,Turn)
于 2012-08-31T11:52:06.313 に答える