问题描述
嘿,我一直在学习 sql,但被一个问题困住了。假设数据库如下所示:
我想检索所有评分和平均评分较差的国家/地区。在这种情况下,它只会返回巴西和智利。
国家 |
评分 |
巴西 |
好 |
巴西 |
平均 |
巴西 |
差 |
智利 |
差 |
智利 |
平均 |
智利 |
好 |
阿根廷 |
平均 |
秘鲁 |
差 |
秘鲁 |
优秀 |
我尝试过条件、IN 条件,但它只会返回包含差或平均的所有内容。
谢谢!
解决方法
IIUC,您正在寻找
SELECT Country FROM your_table
WHERE Rating in ('Poor','Average')
GROUP BY Country
HAVING COUNT(DISTINCT Rating)=2