SQL- 在 1 列中获取具有多个值的值

问题描述

嘿,我一直在学习 sql,但被一个问题困住了。假设数据库如下所示:

我想检索所有评分和平均评分较差的国家/地区。在这种情况下,它只会返回巴西和智利。

国家 评分
巴西
巴西 平均
巴西
智利
智利 平均
智利
阿根廷 平均
秘鲁
秘鲁 优秀

我尝试过条件、IN 条件,但它只会返回包含差或平均的所有内容

谢谢!

解决方法

IIUC,您正在寻找

SELECT Country FROM your_table
WHERE Rating in ('Poor','Average')
GROUP BY Country 
HAVING COUNT(DISTINCT Rating)=2