【发布时间】:2010-10-06 01:05:43
【问题描述】:
我使用以下查询来查找重复项:
SELECT userID,
COUNT(userID) AS NumOccurrences
FROM userDepartments
GROUP BY userID
HAVING ( COUNT(userID) > 1 )
然后我尝试添加一个内部连接,以便可以看到匹配的用户名,这些用户名存储在不同的表中。
SELECT userDepartments.userID, users.firstname, users.lastname,
COUNT(userID) AS NumOccurrences
FROM userDepartments INNER JOIN users ON userDepartments.userID = users.userID
GROUP BY userID
HAVING ( COUNT(userID) > 1 )
但它给了我一个错误,说 users.firstname 不是某个聚合函数或其他东西的一部分...
有谁知道我如何获得计数,只显示具有多个部门的用户,并从另一个表中获取名字和姓氏,这样我就可以获得具有多个部门的用户名列表分配?
编辑:这是最终为我工作的查询...
SELECT firstname, lastname
FROM tbl_users
WHERE (userID IN
(SELECT userID
FROM tbl_usersDepts
GROUP BY userID
HAVING (COUNT(userID) > 1)))
【问题讨论】:
-
请务必感谢为您的解决方案提供最佳答案的人;即使你最终想出了它。这里一定有人帮助过你。为解决方案点赞。
标签: sql count inner-join