我有一个名为hierarchyylevel和Resourcelvel的表,数据如下所示:
HierarchyLevel
NTLogin PreferredName NTLevel1 NTLevel2 NTLevel3 NTLevel4 NTLevel5
Sam_peter Peter, Sam Geroge_Sam Tom_Grifith James_P Scott_Olsz Todd_L
Temuzin_P P,Temuzin George_Sam Tom_Grifith James_P Scott_Olsz Todd_L
ResourceLevel
IndusName NTLogin PreferredName
HCMR James_P P, James
TTBS Scott_Olsz Olsz, Scott
DAOP George_Sam Sam, George
BFSI Prat_Matt Matt, Prat
现在我想得到来自Resourcelevel的Ntlogin在HierarchyLevel中的任何一个级别匹配的Indusname。
例如,输出应如下面的上述样本数据:
IndusName NTLogin
HCMR James_P
TTBS Scott_Olsz
DAOP George_Sam
答案 0 :(得分:3)
SELECT r.IndusName, r.NTLogin
FROM ResourceLevel r
INNER JOIN HierarchyLevel h
ON r.NTLogin IN (h.NTLevel1, h.NTLevel2, h.NTLevel3, h.NTLevel4, h.NTLevel5)
或
ON r.NTLogin = h.NTLevel1 OR r.NTLogin = h.NTLevel2 OR r.NTLogin = h.NTLevel3 OR r.NTLogin = h.NTLevel4 OR r.NTLogin = h.NTLevel5
您可以使用任何逻辑条件来连接两个表。