我有下表:
id | group | value
1 | 1 | 10
2 | 1 | 20
3 | 1 | 30
4 | 0 | 20
5 | 0 | 20
6 | 0 | 10
我想将组为 1 (=30) 的最大值和组为 0 的所有值返回到一个结果集中。
我必须在一个语句中执行此操作,我想我应该在 SELECT 语句中使用 IF 语句,但我不知道如何做。谁能帮我指明正确的方向?
最佳答案
(select max(value) from the_table where group = 1)
union
(select value from the_table where group = 0)
关于MySQL:如何根据结果集中的条件仅返回一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7417545/