0
我知道存在類似的問題How to select all records from one table that do not exist in another table?但我有一個不同的場景如何從一個表中選擇用戶尚未選擇的所有記錄?
我有一個TotalTrainings
是包括所有記錄
TraningCode | TraningName
1 A
2 B
3 C
4 D
5 E
和另一臺現在SelectedTraining
TraningCode | TraningName | EmpCode | AppraisalID
1 A 7190 12
2 B 7190 12
3 C 8132 10
4 D 5555 08
5 E 8132 10
我有檢索TotalTrainings
的所有記錄(培訓)EmpCode = 7190
沒有選擇appraisalId 12
注TotalTraining
別名tt
和SelectedTraining
是st
我已經做了書面質疑這樣的:
select tt.trainingCode from TotalTraining tt left join SelectedTraining st
on tt.trainingCode = st.trainingCode where st.trainingCode is null
and EmpCode=7190 and appraisalId =12
但它沒有給出結果。
我可以達到同樣的用NOT IN
,它是完美的工作
select tt.trainingCode from TotalTraining tt where tt.trainingCode not in
(
select st.trainingCode from SelectedTraining st where
EmpCode=7190 and appraisalId =12
)
我想實現與Joins
,誰能告訴我在哪裏,我可能是錯的。
注意:這裏請忽略錯別字,如區分大小寫AppraisalId
和appraisalId
,因爲這是沒有問題的
預計產量爲
3
4
5
,因爲到現在爲止沒有被選擇,這些訓練通過EmpCode 7190