查询以查找具有相同生日的员工对

dal*_*985 3 sql

我有一张100人的桌子EMPLOYEE.我想写一个查询来查找具有相同BIRTHDATE的员工对.

结果应该为对中的每个员工返回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
Run Code Online (Sandbox Code Playgroud)

你认为这是对的吗?

ano*_*ery 6

我会这样做:

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
Run Code Online (Sandbox Code Playgroud)