- 是否有一种相当简单的方法来复制
column_1
(数据类型 ttext[]
)到column_2
(数据类型 JSON)?
……或者……
- 是否有一种相当简单的方法可以从 直接转换列的数据类型
text[]
到JSON
?
表格parts_bak1
我正在使用的两列名为 material_size
( text[]
) 和 material_size_json
(json).
我尝试直接将列转换为以下内容:
ALTER TABLE parts_bak1 ALTER COLUMN material_size TYPE JSON USING material_size::text[];
ERROR: column "material_size" cannot be cast automatically t
HINT: Specify a USING expression to perform the conversion.
我不确定如何,甚至如果我应该使用 USING
来应对挑战?
最佳答案
欢迎输入,这似乎有效:
UPDATE parts_bak1
SET material_size_json = subq.material_size
FROM (SELECT id, array_to_json(material_size) AS material_size FROM parts_bak1) AS subq
WHERE parts_bak1.id=subq.id;
关于json - PostgreSQL 将 column_1 text[] 类型转换为 column_2 json 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29106138/