postgres:更新列类型并将列值从json解析为float

zvms9eto  于 2021-07-29  发布在  Java
关注(0)|答案(1)|浏览(353)

示例表:

CREATE TABLE example_table (
    example_column TEXT,
)

示例记录(json存储为文本):

INSERT INTO example_table VALUES ('{"value": "1.3", "Type": "float"}')

目标是:
将列类型更新为双精度
将值更新为1.3
我知道下面的内容接近我想要的,但是我找不到正确的语法。

ALTER TABLE example_table ALTER COLUMN example_column DOUBLE PRECISION...missing parse syntax
uxh89sit

uxh89sit1#

您可以指定 using 定义转换的子句:

alter table example_table
   alter example_column 
      type double precision using (example_column::jsonb ->> 'value')::double precision

相关问题