我需要UPDATE
现有的数字数组行.我目前仍然坚持关于引号的语法(我认为).这是我试过的查询......
测试1
WITH update_table_1 (id,column_b) AS
(VALUES (1,'{22}'), (72,'{29, 5}'))
UPDATE table_1 SET id = up.id, column_b = up.column_b FROM update_table_1 up
WHERE up.id = table_1.id;
Run Code Online (Sandbox Code Playgroud)
测试2
WITH update_table_1 (id,column_b) AS
(VALUES (1,'{"22"}'), (72,'{"29","5"}'))
UPDATE table_1 SET id = up.id, column_b = up.column_b FROM update_table_1 up
WHERE up.id = table_1.id;
Run Code Online (Sandbox Code Playgroud)
测试3
WITH update_table_1 (id,column_b) AS
(VALUES (1,{22}), (72,{29, 5}))
UPDATE table_1 SET id = up.id, column_b = up.column_b FROM update_table_1 up
WHERE up.id = table_1.id;
Run Code Online (Sandbox Code Playgroud)
测试4
WITH update_table_1 (id,column_b) AS
(VALUES (1,{22}), (72,{"29","5"}))
UPDATE table_1 SET id = up.id, column_b = up.column_b FROM update_table_1 up
WHERE up.id = table_1.id;
Run Code Online (Sandbox Code Playgroud)
您需要使用强制转换,array []构造函数或两者:
select '{1,2}'::bigint[];
select array[1,2]; -- this is an int[]
select array[1,2]::bigint[];
Run Code Online (Sandbox Code Playgroud)
否则,Postgres会(正确地)抱怨未知的操作员类型等.
归档时间: |
|
查看次数: |
4881 次 |
最近记录: |