MySQL选择具有特定条件的分组

时间:2014-06-19 17:12:36

标签: php mysql sql select group-by

我有一个如下所示的SQL表:

gameId   team1   team2   date   stage
1          5       2     xx/xx    0
2          3       4     xx/xx    0
3          7       1     xx/xx    0
5          5       3     xx/xx    8
6          7       2     xx/xx    8
7          5       3     xx/xx    5
8          7       2     xx/xx    5

我想选择所有并按特定顺序(8,0,5)按阶段对其进行分组,并且每个组内按日期排序。

我想到了:

SELECT * FROM table ORDER BY date DESC GROUP BY stage

但我不确定如何为分组提供标准,因为它不遵循数字逻辑。

目标是按照我提到的特定顺序按阶段显示项目。

2 个答案:

答案 0 :(得分:1)

SELECT  *
FROM    table
ORDER BY
        FIND_IN_SET(stage, '8,0,5'),
        date DESC

答案 1 :(得分:1)

试试这个。

SELECT * FROM table ORDER BY FIELD(stage, '8', '0', '5'), date DESC GROUP BY stage;