2013-11-25 59 views
0

我有兩個表t1和t2,除了大約一萬六千條記錄t1有t2以外,幾乎是一樣的。我試圖做一個左連接,以獲得只有t1的記錄。mysql查詢不停止運行

當我運行下面好像它運行(我總是阻止它的早期,因爲這不正是我需要的,但我總是回來匹配結果):

select * from t1 LEFT JOIN t2 on t1.id = t2.id 

,但是當我添加以下條件

select * from t1 LEFT JOIN t2 on t1.id = t2.id where t2.id is null 

它永不停止。其中一條約435,000條記錄,另一條約42萬條記錄。 我也嘗試索引這兩個表上我匹配的領域無濟於事。

+1

是'SELECT *'真的有必要嗎? – Kermit

+0

@FreshPrinceOfSO我改變了只是一個領域,它仍然永遠運行 –

+0

它不能停下來。它不會停止。 – bobobobo

回答

1

怎麼樣這樣的:

select t1.id from t1 where t1.id not in (select t2.id from t2) 
+0

這個作品...我發佈的那個有什麼不對嗎? –