【问题标题】:SQL- Fetching values with multiple values in 1 columnSQL-在 1 列中获取具有多个值的值
【发布时间】:2021-02-15 05:27:12
【问题描述】:

嘿,我一直在学习 SQL,但遇到了一个问题。假设数据库如下所示:

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

Country Rating
Brazil Good
Brazil Average
Brazil Poor
Chile Poor
Chile Average
Chile Good
Argentina Average
Peru Poor
Peru Outstanding

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

谢谢!

【问题讨论】:

  • 看不到您的表格
  • 孩子的评价也很出色。巴西的评分也不错。不明白你的问题
  • 更具体一点,我想获得评级较差和平均水平的国家/地区名称。在这种情况下,只有巴西和智利。我尝试过的编码返回所有具有差或平均的国家/地区。

标签: sql relational-division


【解决方案1】:

IIUC,您正在寻找

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

【讨论】:

  • 试过这个,它会返回巴西、智利、阿根廷和秘鲁。我只想返回巴西和智利,因为它们是唯一包含平均和差的评论。
  • 对于上面提供的示例数据,这不会返回 Argentinaperu。你真的试过这个吗? @阿尔伯特
猜你喜欢
  • 2019-04-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多