PostgreSQL的V9.5 + UPSERT
问题描述:
它看起来像PostgreSQL的V9.5得到了INSERT支持... ON冲突束手无策/ UPDATE http://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=168d5805e4c08bed7b95d351bf097cff7c07dd65PostgreSQL的V9.5 + UPSERT
我想要做这样的
UPSERT INTO "myScheme"."myTable" (id, a, b, c) VALUES ($1, $2, $3, $5) WHERE id = $4'
东西如何实现这一目标的结果考虑到considiration,我使用PostgreSQL V9.5 +
答
这可能是这样的:
INSERT INTO myScheme.myTable(id, a, b, c) VALUES ($1, $2, $3, $4)
ON CONFLICT (id) DO
UPDATE SET a=$2, b=$3, c=$4;
如果id=$1
没有记录,那么它会进行插入。否则,它会更新现有记录。