SQL具有子句在以下查询中无法正常工作

问题描述 投票:0回答:1

这是我的查询:

SELECT custname
FROM customer C
JOIN Organization o ON c.OrganizationId = o.Id
INNER JOIN Organizationratings om
ON o.Id = om.OrganizationId GROUP BY custname
HAVING COUNT(*) = 1

如果我给出count(*)= 2但我有一个客户名称-ABC,并且客户表中只有一条记录,该代码就可以正常工作,但是如果我给出count为2则它将获取该客户名称

我的查询出了什么问题,该怎么办?

mysql sql sql-server qsqlquery
1个回答
0
投票

这是您的查询的有效版本:

SELECT c.custname
FROM customer c
INNER JOIN Organization o ON c.OrganizationId = o.Id
INNER JOIN Organizationratings om ON o.Id = om.OrganizationId
GROUP BY c.custname
HAVING COUNT(*) = 1;

请注意,GROUP BY子句中出现的内容与SELECT子句相同,减去select中的所有其他聚合(无论如何您都没有)。

© www.soinside.com 2019 - 2024. All rights reserved.