upss1988:
私はこれらの2つのデータベースのテーブルを持っています:
table 1
id | user_id|
------------
1 | 14 |
2 | 15 |
3 | 16 |
4 | 17 |
table 2
id | current_user_id |
----------------------
21 | 14 |
22 | 15 |
23 | 16 |
24 | 17 |
25 | 18 |
user_id
そしてcurrent_user_id
2つの異なるテーブルから同じ値です。
私はをループする必要があるuser_id
、と比較current_user_id
して、すべてを削除するcurrent_user_id
場合はuser_id
、その値を欠落しています。(既に削除)
例えば:私が持っている場合はcurrent_user_id=14
、私が持っていないuser_id=14
、私は必要current_user_id=14
削除します。
El_Vanja:
あなたは、サブクエリを利用することができます:
DELETE FROM table2 WHERE current_user_id NOT IN (
SELECT DISTINCT user_id FROM table1
);
NOT IN
それは価値のサブクエリの選択された結果セットに見つからないすべてのレコードを削除するように指定します。