特定のx値が同じテーブル内の任意の行のy値と一致する場合は、行を削除します。SQL削除行の値が異なる列の値と一致する
例:
| x | y |
| 4 | 2 |
| 2 | 6 |
| 8 | 1 |
| 3 | 1 |
| 7 | 8 |
| 9 | 5 |
になるでしょう:
| x | y |
| 4 | 2 |
| 3 | 1 |
| 7 | 8 |
| 9 | 5 |
特定のx値が同じテーブル内の任意の行のy値と一致する場合は、行を削除します。SQL削除行の値が異なる列の値と一致する
例:
| x | y |
| 4 | 2 |
| 2 | 6 |
| 8 | 1 |
| 3 | 1 |
| 7 | 8 |
| 9 | 5 |
になるでしょう:
| x | y |
| 4 | 2 |
| 3 | 1 |
| 7 | 8 |
| 9 | 5 |
あなたのDBがそれを可能にした場合、自己結合が働くことがあります。
DELETE FROM foo AS xside
LEFT JOIN foo AS yside ON xside.y = yside.x
Delete from tab where x in (select y from tab)
代替バージョンカウンターへy
列のヌル値。
Delete from tab t where exists (select 1 from tab ta where ta.y = t.x)
使用EXISTS
Delete from
yourtable where exists (select 1 from tab b where b.y =yourtable.x)
そして、あなたがこれまでに試してみましたか?どのSQLのフレーバーを使用していますか? – SMA