如何让此函数排除某些值

  • 本文关键字:排除 函数 sql
  • 更新时间 :
  • 英文 :


所以我几乎都在尝试让这个SQL语句工作,

我需要找到一个艺术家姓名列表,CD的数量艺术家及其CD的平均价格,但不包括"电子"专辑。

到目前为止,我已经有了第一个工作,我可以返回艺术家姓名列表,CD数量和平均价格,但我无法让它成功排除Electronica专辑,并且想知道是否有一个简单的方法这样做?

我尝试完成的代码是:

SELECT Artist.artName, AVG(CD.cdPrice), Count(*) 
FROM CD 
INNER JOIN Artist 
ON Artist.artID=CD.artID 
Group by Artist.artID 
Having count(*) >1
WHERE Artist.artID =
CD.artID AND artGenre
NOT LIKE “Electronica”));

我已经清理了一下您的查询:

SELECT Artist.artName, AVG(CD.cdPrice), Count(*)
FROM CD INNER JOIN Artist
ON Artist.artID=CD.artID
WHERE Artist.artGenre NOT LIKE "%Electronica%"
GROUP BY Artist.artID

在您的原始查询中,您有 WHERE Artist.artID = CD.artID ,这是完全不必要的,因为您已经在JOIN中指定了这一点。 我还删除了HAVING count(*) > 1子句,因为它不是原始问题陈述的一部分。