我想根据第二个字段的值重新组合我的结果.
我有下表:
SELECT case_id, current FROM progress
+---------+---------+
| case_id | current |
+---------+---------+
| 158 | 1 |
| 158 | 1 |
| 165 | 0 |
| 165 | 0 |
| 166 | 0 |
| 166 | 1 |
| 166 | 0 |
+---------+---------+
Run Code Online (Sandbox Code Playgroud)
并且想像这样重新组合case_id:
+---------+---------+
| case_id | current |
+---------+---------+
| 158 | 1 |
| 165 | 0 |
| 166 | 1 |
+---------+---------+
Run Code Online (Sandbox Code Playgroud)
因此,如果只有'1',它将是'1'.如果只有'0',我们得到'0'.但是如果我们有2个值但至少有一个'1'那么它将是'1'.
我已经尝试过使用group但是它没有像我预期的那样工作.
我不知道最优化的方法是什么.
你所描述的内容听起来像max():
select case_id, max(current) as current
from t
group by case_id;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
50 次 |
| 最近记录: |