使用SQLite在一个表中的2个不同列中查找重复值

时间:2017-10-02 07:47:11

标签: sqlite

EmpID   EmpName         LineManager      eMail
=========================================================
11111   Alex Sanchez    Robert Wham      alex@abc.com
22222   Willis Max      Nara Zee         willis@abc.com
33333   Robert Wham     Melissa Baker    robert@abc.com
44444   Nara Zee        Jane Stewart     nara@abc.com

在上面的例子中,Robert Wham和Nara Zee都是直线经理和员工。

我需要一个SQLite查询来查找这样的案例并检索以下内容:

  1. 的EmpID
  2. 重复名称AS Emp_Line
  3. Emp_Line的电子邮件
  4. 感谢所有人......

1 个答案:

答案 0 :(得分:2)

从员工到直线经理进行自我加入:

SELECT
    t1.*
FROM yourTable t1
INNER JOIN yourTable t2
    ON t1.EmpName = t2.LineManager

这将返回恰好也有作为直线经理的条目的员工的每条记录。如果员工可能有多条记录,那么您可以使用SELECT DISTINCT代替。请注意,您的表格不是很强大,因为多个员工或经理可以使用相同的名称。理想情况下,您可以存储某种类型的唯一员工ID,我们可以加入其中。