我有一个表中的两个不同的引用列连接到另一个表中的单个匹配列。从这个连接表中引入几个列,我可以弄清楚如何使用两个不同的引用列两次拉出相同的列的唯一方法是在第二个select语句中使用内连接。将此与所有其他列和连接一起使用,超出您在下面看到的内容,使数据拉得太慢,无法提取我所提取的数据量。在那里我可以用第二个选择语句执行以下操作吗?
Select *
From
(Select Distinct
P1736.LL_SHP_LEG.LL_SHP_LEG_PCK_LOC_ID,
P1736.LL_LOC_DTL.LL_LOC_NM "Pick Name",
P1736.LL_LOC_DTL.LL_CITY_AD "Pick City",
P1736.LL_LOC_DTL.LL_ST_AD "Pick State",
P1736.LL_LOC_DTL.LL_ZIP_AD "Pick Zip",
P1736.LL_SHP_LEG.LL_SHP_LEG_DROP_LOC_ID
From
P1736.LL_SHP_LEG
Left Outer Join
P1736.LL_LOC_DTL On P1736.LL_SHP_LEG.LL_SHP_LEG_PCK_LOC_ID = P1736.LL_LOC_DTL.LL_LOC_RFNC_ID
Where
(P1736.LL_SHP_LEG.LL_LD_EXTRT_ID > '43000000')) Q1
Inner Join
(Select Distinct
P1736.LL_SHP_LEG.LL_SHP_LEG_DROP_LOC_ID,
P1736.LL_LOC_DTL.LL_LOC_NM "Drop Name",
P1736.LL_LOC_DTL.LL_CITY_AD "Drop City",
P1736.LL_LOC_DTL.LL_ST_AD "Drop State",
P1736.LL_LOC_DTL.LL_ZIP_AD "Drop Zip"
From
P1736.LL_SHP_LEG
Left Outer Join
P1736.LL_LOC_DTL On P1736.LL_SHP_LEG.LL_SHP_LEG_DROP_LOC_ID = P1736.LL_LOC_DTL.LL_LOC_RFNC_ID
Where
(P1736.LL_SHP_LEG.LL_LD_EXTRT_ID > '43000000')) Q2 On Q1.LL_SHP_LEG_DROP_LOC_ID = Q2.LL_SHP_LEG_DROP_LOC_ID
答案 0 :(得分:0)
你在连接条件下尝试过OR吗?由于我没有数据,我无法验证,如果以下查询有帮助,请告诉我
Select Distinct
P1736.LL_SHP_LEG.LL_SHP_LEG_PCK_LOC_ID,
P1736.LL_LOC_DTL.LL_LOC_NM "Pick Name",
P1736.LL_LOC_DTL.LL_CITY_AD "Pick City",
P1736.LL_LOC_DTL.LL_ST_AD "Pick State",
P1736.LL_LOC_DTL.LL_ZIP_AD "Pick Zip",
P1736.LL_SHP_LEG.LL_SHP_LEG_DROP_LOC_ID
From P1736.LL_SHP_LEG
Left Outer Join P1736.LL_LOC_DTL
On ((P1736.LL_SHP_LEG.LL_SHP_LEG_PCK_LOC_ID = P1736.LL_LOC_DTL.LL_LOC_RFNC_ID)
OR (P1736.LL_SHP_LEG.LL_SHP_LEG_DROP_LOC_ID = P1736.LL_LOC_DTL.LL_LOC_RFNC_ID))
Where (P1736.LL_SHP_LEG.LL_LD_EXTRT_ID > '43000000')