小编Ama*_*asu的帖子

为什么在构造具有一个元素而不是两个元素的行时需要 ROW 关键字?

在 PostgreSQL 11 中,以下表达式

UPDATE test_table SET ("column_a","column_b") = ('value-a','value-b') WHERE "column_a" = 'value-c' 
Run Code Online (Sandbox Code Playgroud)

被接受并执行更新。

但是对于单个列/值,例如

UPDATE test_table SET ("column_a") = ('value-a') WHERE "column_a" = 'value-c'
Run Code Online (Sandbox Code Playgroud)

它给出了一个错误。ROW必须提供,例如

UPDATE test_table SET ("column_a") = ROW ('value-a') WHERE "column_a" = 'value-c'
Run Code Online (Sandbox Code Playgroud)

有没有解释为什么选择这种行为?如果ROW缺少,是否有歧义?

postgresql syntax row

2
推荐指数
1
解决办法
136
查看次数

标签 统计

postgresql ×1

row ×1

syntax ×1