PostgreSQL 9.3データベースに2つのテーブルがあります。テーブルにlink_reply
は、which_group
テーブルを指すという名前の外部キーがありますlink_group
。
link_group
関連する行がlink_reply
存在しない場所からすべての行を削除したい。基本的には十分に聞こえますが、私はそれに苦労しています。
これはこのように単純なものになりますか(機能しません)?
DELETE FROM link_group WHERE link_reply = NULL;
誰もが見ることができるDDLはありますか?
—
dizzystar 2016
MINUS演算子を見てください。あなたはlinks_replyでフィールドを指定する必要があります。
—
Vérace
DELETE FROM links_group USING links_group AS lg LEFT JOIN links_reply AS lr ON lg.col= lr.some_other_col WHERE links_reply.some_other_col IS NULL
同様の質問がありましたが、これも同時実行性を考慮に入れています。dba.stackexchange.com/questions/251875を参照してください。
—
pbillen