我有一個SQL不是很複雜,但充分混淆,我質疑,而我有一個等值或重合計數是相同的。如何擺脫不存在
SQL1:
SELECT a, b
FROM table1
WHERE NOT EXISTS(
SELECT a, c
FROM TABLE2
WHERE table2.a != table1.a)
SQL2
SELECT table1.a, table1.b
FROM table1
LEFT JOIN table2 ON table2.a = table1.a
WHERE table2.a IS NULL
上兩者是相同的,但不知道這是一個偶然的機會,我想,以確保轉換不改變計數原創功能。
不知道我得到了SQL1的功能。你想從table1中得到a,b,其中a是table2.a的唯一值? – 2012-03-09 15:40:48
我認爲重點是從table1中獲取表2中沒有相應條目的行。 – Dave 2012-03-09 15:45:10
@Dave是的,我認爲這是最初的預期目的。但我不是100%肯定的,我正試圖優化它,以便它運行得更快。 – Churk 2012-03-09 16:12:56