Moy*_*ari 3 mysql sql database group-by
我有一个包含2列的表,以下是我的表结构
referral_id | 状态
531 | 0
531 | 0
531 | 3
530 | 3
529 | 3
528 | 3
527 | 3
527 | 0
527 | 0
523 | 2
523 | 0
523 | 3
522 | 3
522 | 3
522 | 3
522 | 3
511 | 3
Run Code Online (Sandbox Code Playgroud)
我的预期产量是
referral_id | 状态
530 | 3
529 | 3
528 | 3
522 | 3
511 | 3
Run Code Online (Sandbox Code Playgroud)
第1列referral_id可以有多个具有相同id的元组(请参阅referral_id的531和527).如果所有相应的"状态"都不是3,我需要确保具有相同referral_id的元组被消除.如果所有相应的"状态"都是3,那么我需要应用GROUP BY来获得结果中的referral_id(s) ."status"列的值可以是1到4,但我只需要查找3.那么我该如何实现这个结果呢?
关于什么 ...
select referral_id, max(status)
from tablename
group by referral_id
having max(status) = 3 and max(status) = min(status)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
98 次 |
| 最近记录: |