1
PostgreSQLで更新クエリでJSON_POPULATE_RECORDを使用するにはどうすればよいですか?postgresqlでjson populateレコードでupdateを使用するにはどうすればよいですか?
PostgreSQLで更新クエリでJSON_POPULATE_RECORDを使用するにはどうすればよいですか?postgresqlでjson populateレコードでupdateを使用するにはどうすればよいですか?
JSON_POPULATE_RECORDでUPDATEクエリを使用することができます。以下は、テストとしてサンプルテーブル名を使用し、データ型文字が変化する3つの列a、b、cを持つ例です。
update test set("a","b","c")=((select a,b,c from json_populate_record(NULL::test,'{"a":"first column","b":"second column","c":"third column"}')))
また、このクエリでUPSERTを使用することもできます。
insert into test select * from json_populate_record(NULL::test, '{"a":"first column","b":"column","c":"column"}') ON CONFLICT ON CONSTRAINT a_PKey DO UPDATE SET("a","b","c")=((select a,b,c from json_populate_record(NULL::test,'{"a":"first column","b":"second column","c":"third column"}'))) ;
上記のクエリが挿入され、主キーの競合または制約の競合が発生した場合、レコードは更新されます。