2013-06-18 62 views
0

我有一個表中有2個不是主鍵的字段,他們不能像我有重複。 我想從連接表中插入數據,但避免更多重複。我所做的是:插入避免重複但不使用主鍵

insert into X(A,B) 
select * 
from (Y.A, Z.B 
    from Y join Z 
    on (Y.id = Z.id)) tmp 
    WHERE NOT EXISTS (SELECT * FROM X 
     WHERE A = tmp.A 
     AND B = tmp.B) 

我的理解,最好不要使用INSERT ... WHERE NOT EXISTS,你認爲有這個樣的代碼可能出現的問題?

回答