PostgreSQL JSON 解析:将 JSON 数组转化为三列数据

假设需要解析的字符串是 JSON 类型的,可以使用 PostgreSQL 内置的 json 函数进行解析,具体的语法如下:

SELECT 
  json_array_elements('[{"行业":100.0},{"技术":100.0},{"政策":90.0}]'::json) ->> '行业' AS 行业,
  json_array_elements('[{"行业":100.0},{"技术":100.0},{"政策":90.0}]'::json) ->> '技术' AS 技术,
  json_array_elements('[{"行业":100.0},{"技术":100.0},{"政策":90.0}]'::json) ->> '政策' AS 政策;

解析结果如下:

 行业  | 技术  | 政策 
-------+------+------
 100.0 |      |     
       | 100.0|     
       |      | 90.0

解析过程中,先使用json_array_elements函数将 JSON 数组展开成多行数据,然后再使用->>运算符取出每个元素中指定键的值。由于每个元素中只有一个键值对,因此可以直接使用键名来取值。最终的查询结果是三列,分别对应 JSON 数组中每个元素的值。

PostgreSQL JSON 解析:将 JSON 数组转化为三列数据

原文地址: https://www.cveoy.top/t/topic/lOil 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录