表1具有unique_id,ID_actor,ID_media,ID_program。Mysql - 在表1上從表1上的SELECT上插入表1中的WHERE NOT EXIST中的INSERT
每個媒體可能包含一個或多個節目,每個節目可能包含一個或多個演員,並且不能被複制。
在另一個表(表2),它有更多的信息,有時在標題的人記錄演員的名字..所以我發現這個查詢做出正確的參考媒體
INSERT INTO Table1 (ID_Actor,ID_Media,ID_Program)
(SELECT 123, ID_Media, ID_Program FROM TABLE2 WHERE Title LIKE '%ActorsName%')
此代碼效果很好,但如果已經將該演員引用到了媒體上的節目,它將被複制。因此,由於插入似乎不支持WHERE不知道如何首先檢查演員是否已經在table1上,媒體和來自SELECT查詢的程序。
插件如果不存在
(SELECT ID_Actor,ID_Media,ID_Program from Table1
WHERE ID_Actor = 123
AND ID_Media = (ID_media from SELECT QUERY)
AND ID_Program = (ID_Program From Select Query))
查找__INSERT ... ON DUPLICATE KEY UPDATE__。如果您在不能重複的列上有唯一的密鑰,則應該爲您解決問題。 –