使用PostgreSQL进行upsert操作
我想到了在PostgreSQL 9.5及以上版本中可以使用CONFLICT来完成UPSERT操作,觉得这个功能很方便,所以我记录下了操作方法。
-- test_table_wk のデータで test_table を upsert する
INSERT INTO test_table
SELECT * FROM test_table_wk
ON CONFLICT
ON CONSTRAINT test_table_pkey
DO UPDATE SET
name = excluded.name,
gender = excluded.gender,
age = excluded.age;
非常清晰易读的写作!