PostgreSQLで削除された行の数を取得するにはどうすればよいですか?
How Get Number Deleted Rows Postgresql
解決:
あなたが使用することができますRETURNING句:
DELETE FROM tableWHERE条件がTRUERETURNING *;その後、返された行数を確認する必要があります。あなたはCTEでそれを合理化することができます:
WITH削除済みAS(DELETEFROMテーブルWHERE条件がTRUERETURNING *)SELECT count(*)FROMdeleted;これにより、削除された行の数だけが返されます。
これはJavaでは単純なはずです。
ステートメントstmt = connection.createStatement(); int rowsAffected = stmt.executeUpdate( 'delete from your_table'); System.out.println( '削除済み:' + rowsAffected);java.sql.Statementを参照してください。
GET DIAGNOSTICSは、変更/削除されたレコードの数を表示するために使用されます。
サンプルコード
CREATE OR REPLACE FUNCTION fnName()RETURNS void AS $ BODY $宣言カウント数値;カウント開始:= 0; LOOP--ここでの条件は更新または削除します。 GET DIAGNOSTICS count = ROW_COUNT;通知を上げる '値:%'、カウント;ループの終了;終わり; $ BODY $ a