假設我有表(t1)其中列id是(1,2,3,4,5,6,7,8,9)和另一個表(t2)其中ID列是(1,2,3,4,5)。刪除表(加入)
我想從表t1刪除條目,使T1 ID列將成爲(1,2,3,4,5)
我試過內連接和全外連接,但他們沒有制定出。 我現在這是一個簡單的問題,但我無法過來。 在此先感謝
假設我有表(t1)其中列id是(1,2,3,4,5,6,7,8,9)和另一個表(t2)其中ID列是(1,2,3,4,5)。刪除表(加入)
我想從表t1刪除條目,使T1 ID列將成爲(1,2,3,4,5)
我試過內連接和全外連接,但他們沒有制定出。 我現在這是一個簡單的問題,但我無法過來。 在此先感謝
嘗試
DELETE from t1 where t1.ID not in (SELECT ID FROM t2)
所以你沒有必要在這種情況下加入。
正是我需要的。謝謝 –
隨時接受答案:) –
當然,10分鐘後 –
嘗試這種情況:
DELETE FROM t1 WHERE id NOT IN (SELECT id FROM t2)
IN操作者確定一個指定的值是否在子查詢或列表中的任何值匹配。
語法:
test_expression [NOT] IN
(subquery | expression [ ,...n ]
)
瞭解更多關於IN
運營商here。
看來您可能在數據庫中存在一些完整性問題。嘗試使用約束和外鍵,您將節省時間清理孤兒ID。 P.S.這並不能使約翰回答不太正確。我只是一個評論。 – borjab