0
我正在SQL中使用相關和不相關子查詢,我試圖用這兩種類型的查詢得到相同的結果。我的問題是與我的不相關的子查詢。查詢運行但不返回任何結果。我的相關子查詢確實會返回結果,就像它應該那樣。我需要幫助,試圖找出我的簡單不相關的子查詢是否寫入不正確。任何幫助是極大的讚賞。我的查詢如下:SQL中的相關和不相關子查詢
--non-相關子查詢
SELECT *
FROM hr.bc_products p
WHERE p.sku NOT IN (SELECT ol.sku FROM hr.bc_orderlines ol);
--correlated子查詢
SELECT *
FROM hr.bc_products p
WHERE NOT EXISTS (SELECT ol.sku FROM hr.bc_orderlines ol WHERE ol.sku = p.sku);
fwiw,我傾向於這樣寫一個排除連接:'SELECT p。* FROM hr.bc_products p LEFT JOIN hr.bc_orderlines ol ON p.sku = ol.sku WHERE ol.sku IS NULL' –
說得通。讓我試試看。 – Sonic