簡體   English   中英

SQL:檢查一個表中是否存在另一個表中的條目,並刪除重復項

[英]SQL: Check if entry exists in one table to another and remove duplicates

實際上與此問題相同: sql:檢查表B中是否存在表A中的條目

這是我的表,員工和用戶

Employee           User
EmpNo              EmpNo
PositionCode

我只想檢查table:Employee中的EmpNo是否已存在於table:User中,這是ive使用的代碼:

SELECT Employee.EmpNo, PositionCode
FROM   Employee
WHERE  NOT EXISTS (SELECT 1 
                   FROM   User
                   WHERE  User.EmpNo= Employee.EmpNo)

現在通過該查詢顯示結果,但也顯示重復的PositionCode行。

例如:

EmpNo    PositionCode 
E098     ER1
E712     ER1
E990     ER1

是的,我只需要獲取PositionCode(在此版本中為ER1),以便可以將其顯示在dropdownList中,而您又不想在dropdownlist中顯示相同的項目,對嗎?

我仍然不確定你想要什么。 但是據我了解,您需要與EmpNo相關的不同PositionCode 如果那是您想要的,則可以如下所示選擇Distinct PositionCode

SELECT DISTINCT PositionCode
FROM   Employee
WHERE  NOT EXISTS (SELECT 1 
                   FROM   User
                   WHERE  User.EmpNo= Employee.EmpNo)

讓我知道這是否不是您想要的。

SELECT distinct  PositionCode
FROM   Employee
WHERE  NOT EXISTS (SELECT 1 
                   FROM   User
                   WHERE  User.EmpNo= Employee.EmpNo)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM