嗨我有这样的查询:
SELECT TT2.whs_code,
TT2.pdt_code,
TT2.fresh_frozen_status,
TT2.case_dt_yyyymmdd,
TT2.qty_cases,
TT2.qty_wt
FROM #TempTable2 AS TT2
LEFT OUTER JOIN #TempTable AS TT1
ON TT1.whs_code = TT2.whs_code
AND TT1.pdt_code = TT2.pdt_code
AND TT1.fresh_frozen_status = TT2.fresh_frozen_status
AND TT1.case_dt_yyyymmdd = TT2.case_dt_yyyymmdd
Thing是我想要选择#TempTable2中的#TiTable1中不存在的列
whs_code, pdt_code, fresh_frozen_status, case_dt_yyyymmdd
表示可以说一组数据
1,115G,FR,20160222
在#TempTable1中所以如果一组数据说出来
必须选择1,115G,FR,20160223
或
必须选择1,115G,FZ,20160223
或
必须选择2,115G,FR,20160223
但不是1,115G,FR,20160222
答案 0 :(得分:0)
我会使用NOT EXISTS。
SELECT TT2.whs_code,
TT2.pdt_code,
TT2.fresh_frozen_status,
TT2.case_dt_yyyymmdd,
TT2.qty_cases,
TT2.qty_wt
FROM #TempTable2 AS TT2
WHERE NOT EXISTS (
SELECT TOP 1 *
FROM #TempTable AS TT1
WHERE tt1.whs_code = tt2.whs_code
AND tt1.pdt_code = tt2.pdt_code
AND TT1.fresh_frozen_status = tt2.fresh_frozen_status
AND TT1.case_dt_yyyymmdd = TT2.case_dt_yyyymmdd
)