Postgres:更新列类型并将列值从 json 解析为浮点数
Postgres: update column type and parse column value from json to float
示例Table:
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
您可以指定一个 using
子句来定义转换:
alter table example_table
alter example_column
type double precision using (example_column::jsonb ->> 'value')::double precision
示例Table:
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
您可以指定一个 using
子句来定义转换:
alter table example_table
alter example_column
type double precision using (example_column::jsonb ->> 'value')::double precision