我有一個查詢,它為我提供了來自特定部門的 Manager 和首字母縮寫詞,我需要獲取也在查詢結果中的 DISTINCT Manager .. 讓我詳細說明:
我的初始查詢:
SELECT Initials, Manager
FROM EmploymentUser
WHERE Department = 'IT'
AND (EndDate >= GETDATE() OR DismissedDate >= GETDATE() OR (DismissedDate IS NULL))
AND (LastFlowEditDate IS NOT NULL)
AND (EmployType = 'fixed')
AND (LastDismissFlowDate IS NULL)
AND (IsDebugUser IS NULL OR IsDebugUser = '');
這給了我以下結果:
|Initials|Manager|
------------------
|DBX |FPX |
|GGX |FPX |
|BOX |FPX |
|LHX |FPX |
|FPX |MPX |
|SKX |FPX |
------------------
我需要 1 個與上述不同的 Manager,但是正如您在上面的結果中看到的,我得到了 2 個 Manager(MPX 和 FPX)。FPX 是我需要得到的,因為 FBX 也出現在 Initials 列中,而 MPX 不是 ..(換句話說:MPX 是 FPX 的經理,但 FPX 是部門 IT 的經理,因為他是其余部門的經理結果,我需要 IT 經理)
我怎樣才能達到我想要的結果?:-)
uj5u.com熱心網友回復:
結果的自半連接應該可以解決問題:
;with t as (
<your entire select here>
)
select distinct Manager
from t
where exists
(
select 1
from t t2
where t2.Initials=t.Manager
)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/313277.html
標籤:查询语句
上一篇:SQLXML用條件修改特定值
下一篇:在依賴的多列上旋轉
