PostgreSQL 11.5 insert or update(每次操作都要添加字段值)

PostgreSQL 11.5 insert or update (every operation should add the field value)

我使用 INSERT INTO ON CONFLICT DO UPDATE 来实现如果该行尚不存在,则 INSERT 它,如果它存在,则执行 UPDATE,但我想在每次更新时添加一个字段的值。

假设table(test_table)只有两列,它们的名称是:name(带有UNIQUE约束)和count,和 INSERT 这个:

values ('postgres',10)

10次,那么我想要的结果是:

name         count

postgres     100

如何写SQL?这是我使用的:

INSERT INTO test_table(name,count)
VALUES ('postgres', 10)
ON CONFLICT(name)
DO UPDATE set count = EXCLUDED.count + 10

结果是

name         count

postgres     20

如何解决这个问题?

如果你想求和你应该使用的值

DO UPDATE set count = test_table.count + EXCLUDED.count