我想写一个查询,我希望Table1中满足下面的第一个内部联接条件(这是工作查找)的所有项目。如何为这个scenerio编写一个SQL查询?
然后我想检查table3是否有例外。例外情况以参考编号(REF_NO)为基础。如果参考编号存在于table3中,那么我需要检查商店编号(STORE_NO)是否匹配。如果它们匹配,那么我想要table1中的匹配记录。如果不是,则从表1中排除匹配的记录。
但是,如果table3中不存在引用编号,那么我希望table1中与table2匹配的记录。
感谢
USE master
GO
table1
table2
table3
SELECT
T1.TERMINAL,
T1.OPERATOR,
T1.TRANS_NO,
T1.SEQ_NO,
T1.STORE_NO,
T2.REF_NO,
T2.SDATE,
T2.EDATE,
T1.POS_DATE,
T1.ITEM,
T1.ITYPE,
T1.SOLD_QTY,
T1.PRICE,
T2.OI_AMT
FROM [table1] As T1
INNER JOIN [table2] As T2
ON (T1.ITEM = T2.ITEM) And (T1.POS_DATE BETWEEN T2.SDATE And T2.EDATE)
INNER JOIN [table3] As T3
ON (T2.REF_NO = T3.REF_NO) And (T1.STORE_NO = T3.STORE)
如何加入表3的左加入?然后是where子句。 –