PostgreSQL v9.5+ 更新插入
PostgreSQL v9.5+ UPSERT
看起来 PostgreSQL v9.5 支持 INSERT ... ON CONFLICT DO NOTHING/UPDATE http://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=168d5805e4c08bed7b95d351bf097cff7c07dd65
我想做这样的事情
UPSERT INTO "myScheme"."myTable" (id, a, b, c) VALUES (, , , ) WHERE id = '
考虑到我使用的是 PostgreSQL v9.5+
,如何实现这个结果
可能是这样的:
INSERT INTO myScheme.myTable(id, a, b, c) VALUES (, , , )
ON CONFLICT (id) DO
UPDATE SET a=, b=, c=;
如果id=
没有记录那么它会插入。否则它将更新现有记录。
看起来 PostgreSQL v9.5 支持 INSERT ... ON CONFLICT DO NOTHING/UPDATE http://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=168d5805e4c08bed7b95d351bf097cff7c07dd65
我想做这样的事情
UPSERT INTO "myScheme"."myTable" (id, a, b, c) VALUES (, , , ) WHERE id = '
考虑到我使用的是 PostgreSQL v9.5+
,如何实现这个结果可能是这样的:
INSERT INTO myScheme.myTable(id, a, b, c) VALUES (, , , )
ON CONFLICT (id) DO
UPDATE SET a=, b=, c=;
如果id=
没有记录那么它会插入。否则它将更新现有记录。