X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;ds=sidebyside;f=src%2Fdb%2Fpostgres%2Fsql%2Fresource-upsert.sql;fp=src%2Fdb%2Fpostgres%2Fsql%2Fresource-upsert.sql;h=51d4e94c4225f5e9df51110d558355cef952c414;hb=b0103b0d496262c438b40bc20304081dbfe41e73;hp=0000000000000000000000000000000000000000;hpb=8ed81748bce7cea7904cac7225b20a60cafdfc16;p=squeep-indie-auther diff --git a/src/db/postgres/sql/resource-upsert.sql b/src/db/postgres/sql/resource-upsert.sql new file mode 100644 index 0000000..51d4e94 --- /dev/null +++ b/src/db/postgres/sql/resource-upsert.sql @@ -0,0 +1,10 @@ +-- +INSERT INTO resource + (resource_id, secret, description) +VALUES + (COALESCE($(resourceId)::UUID, uuid_generate_v4()), $(secret), $(description)) +ON CONFLICT (resource_id) DO UPDATE +SET + secret = COALESCE(EXCLUDED.secret, resource.secret), + description = COALESCE(EXCLUDED.description, resource.description) +RETURNING *