我目前正在使用以下MySQL语句:

SELECT * FROM jobs GROUP BY jobType, address1;


我需要能够向该查询添加另一个条件。 GROUP BY仅合并重复项,但我还需要合并jobType为'1'或jobType为'2'的所有行。所有其他jobType将正常分组。

例如,我的表如下所示:

jobType | address1
1       | 123 State st
2       | 123 State st
3       | 415 5th Ave
1       | 123 State st
1       | 24 3rd Ave
1       | 123 State st
3       | 555 Mission st
4       | 123 State st


我想合并第1行和第2行,即使它们的jobType不同。同样,任何具有jobType而不是1或2的行都将被正常分组。

最佳答案

SELECT *
FROM jobs
GROUP BY CASE WHEN jobType in ('1','2') THEN '1' ELSE jobType END, address1

关于mysql - MySQL GROUP BY具有附加条件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9337886/

10-13 00:47