我有一张表 EMPLOYEE 有 100 个人。我想编写一个查询来查找具有相同生日的成对员工。
结果应该为该对中的每个员工返回 EMPNO、LASTNAME 和 BIRTHDATE(一个 6 列结果表)。
我是这么想的
SELECT t1.EmpNo
,t1.LastName
,t1.BirthDate
,t2.EmpNo
,t2.LastName
,t2.BirthDate
FROM Employee t1
INNER JOIN (
SELECT EmpNo
,LastName
,BirthDate
FROM Employee ) t2 ON t2.BirthDate = t1.BirthDate
WHERE t2.EmpNo != t1.EmpNo
你觉得对吗?
最佳答案
我会这样做:
SELECT t1.EmpNo,
t1.LastName,
t1.BirthDate,
t2.EmpNo,
t2.LastName,
t2.Birthdate
FROM Employee t1, Employee t2
WHERE t1.BirthDate = t2.Birthdate
AND t1.EmpNo <> t2.EmpNo
关于sql - 查询以查找具有相同生日的员工对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5027194/