我有一个postgres表,其中包含id
、name
、item
和counter
列,现在我想为用户所属的那些行将counter
值增加1。
我试过这样做,但是语法错误
UPDATE Items set counter = counter + 1 WHERE users = 'Tony';
对于用户Tony所属的所有行,这应该将
counter
值增加1最初的
id | name | item | counter
1 | Tony | car | 1
2 | Tony | bike | 1
3 | Ray | car | 1
4 | Ray | bike | 1
5 | Tony | cycle | 1
最终的
id | name | item | counter
1 | Tony | car | 2
2 | Tony | bike | 2
3 | Ray | car | 1
4 | Ray | bike | 1
5 | Tony | cycle | 2
但我的查询出现语法错误。我做错什么了?
最佳答案
您的UPDATE
查询包含users
而不是name
。
demo: db<>fiddle
UPDATE Items set counter = counter + 1 WHERE name = 'Tony';
关于sql - 如何为postgres中的选定行将列值增加1?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52557914/