相同单号,查询人民币、微信支付、支付宝,查找完全满足条件的数据

单号 付款方式
1 人民币
1 微信支付
2 支付宝
2 挂账
3 人民币
3 挂账
4 人民币
4 支付宝
4 微信支付
5 人民币
6 微信支付
7 支付宝
满足的结果:单号 1,4,5,6,7,请问查询语句如何编写?
最佳答案

select * from ( SELECT billid,COUNT(*) AS total_count, COUNT(CASE WHEN PAYDESC in ('人民币','支付宝','微信') THEN 1 ELSE NULL END) AS satisfied_count FROM BILL_PAYWAY group by BILLID) as v where v.satisfied_count=v.total_count order by v.BILLID desc

9个月前 评论
讨论数量: 17

select 单号 from table where 付款方式 in (人民币,支付宝,微信) group by 付款方式 having count(DISTINCT 单号) = 3

9个月前 评论
LILEI_1688 (楼主) 9个月前
Imuyu (作者) 9个月前
LILEI_1688 (楼主) 9个月前
LILEI_1688 (楼主) 9个月前
Imuyu (作者) 9个月前
LILEI_1688 (楼主) 9个月前
LILEI_1688 (楼主) 9个月前
LILEI_1688 (楼主) 9个月前
LILEI_1688 (楼主) 9个月前
LILEI_1688 (楼主) 9个月前

file

9个月前 评论
Imuyu 9个月前

file

9个月前 评论
Imuyu 9个月前

select * from ( SELECT billid,COUNT(*) AS total_count, COUNT(CASE WHEN PAYDESC in ('人民币','支付宝','微信') THEN 1 ELSE NULL END) AS satisfied_count FROM BILL_PAYWAY group by BILLID) as v where v.satisfied_count=v.total_count order by v.BILLID desc

9个月前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!