【发布时间】:2019-10-14 11:29:01
【问题描述】:
我有一个非常简单的 upsert,我正在尝试制作,但到目前为止没有成功。
考虑表格:
CREATE TABLE bla(id TEXT PRIMARY KEY, data INT);
和插入:
INSERT INTO bla(id, data) VALUES('12wed', 23) RETURNING (id);
到目前为止一切都很好。
我试图实现的逻辑如下:
if no record with id=id:
insert and return id,
else:
do nothing
我试过了
INSERT INTO bla(id, data) VALUES('12wed', 23)
RETURNING (id)
ON CONFLICT(id) DO NOTHING;
但我收到以下错误:
ERROR: syntax error at or near "ON"
LINE 3: ON CONFLICT(id) DO NOTHING;
【问题讨论】:
-
你的方法有什么问题?
-
编辑错误。不知道为什么会出现语法错误。
标签: sql postgresql sql-insert upsert