用postgre语法把[{"行业":100.0},{"技术",100.0},{"政 策",90.0}]把行业,技术,政策单独提取出来作为一列且对应的值
假设该数据存储在名为"my_table"的表中的"id"字段对应的记录中,可以使用以下语句将"行业","技术","政策"提取出来作为一列,并对应的值:
SELECT
id,
(json_array_elements('[{"行业":100.0},{"技术":100.0},{"政策":90.0}]') ->> '行业')::float AS 行业,
(json_array_elements('[{"行业":100.0},{"技术":100.0},{"政策":90.0}]') ->> '技术')::float AS 技术,
(json_array_elements('[{"行业":100.0},{"技术":100.0},{"政策":90.0}]') ->> '政策')::float AS 政策
FROM my_table;
这里使用了json_array_elements函数将json数组转化为多行数据,然后使用->>操作符获取键对应的值,并使用::float将字符串转为浮点数。
原文地址: https://www.cveoy.top/t/topic/Afj 著作权归作者所有。请勿转载和采集!