在比较具有相同 sid 但不同 cid-data 值的多条记录后,我请求一些有关 MySQL when-then 语句的帮助,以从表中获取所有 sid:
flag sid cid data
---- --- --- ----
1 300 1 john
1 300 2 john_email
1 300 3 77500
1 300 4 ok
1 301 1 jack
1 301 2 john_email
1 301 3 72210
1 301 4 notok
这里对于每个 sid,我需要检查 if (sid=2 has data=john_email) AND (sid=4 has data=ok) 只有当两个条件都满足时,我才返回 sid。即输出将仅为“300”。
我很困惑如何使用 case-when-then 并将 'data' 与 'john_email' 进行比较,并根据 cid 值将数据与 'ok' 进行比较。谢谢阅读。