エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
PostgreSQLのWITH句とRETURNINGを使って、親テーブルのレコードを削除しつつ子テーブルのデータを削除す... PostgreSQLのWITH句とRETURNINGを使って、親テーブルのレコードを削除しつつ子テーブルのデータを削除するSQLを書いてみます。 従来ならストアードプロシージャーを使うかSQLを二回発行する必要がありました。 WITH句はサブクエリーに名前を付ける構文です。 RETURNINGは更新系のSQLの実行後に影響のあった行のデータを返すものです。 親を削除した結果を受けて、子のテーブルを削除するのは以下のようなSQLになります。 WITH deleted AS (DELETE FROM t_parent WHERE delete_flag = '1' RETURNING parent_id) DELETE FROM t_child WHERE parent_id IN (SELECT parent_id FROM deleted) ちなみにこのSQLが使えるのはPostgreSQ