Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在SQL中查询json字典数据_Sql_Oracle - Fatal编程技术网

在SQL中查询json字典数据

在SQL中查询json字典数据,sql,oracle,Sql,Oracle,表中的My CLOB字段包含JSON,如下所示: {"a":"value1", "b":"value2", "c":"value3"} key|value ---|------ a |value1 b |value2 c |value3 我正在尝试编写一个SQL查询,以返回一个包含键和值字段的表,如下所示: {"a":"value1", "b":"value2", "c":"value3"} key|value ---|------ a |value1 b |value2 c

表中的My CLOB字段包含JSON,如下所示:

{"a":"value1", "b":"value2", "c":"value3"}
key|value
---|------
a  |value1
b  |value2
c  |value3
我正在尝试编写一个SQL查询,以返回一个包含键和值字段的表,如下所示:

{"a":"value1", "b":"value2", "c":"value3"}
key|value
---|------
a  |value1
b  |value2
c  |value3
任何帮助都将不胜感激

如果希望值以行而不是列的形式显示,请使用JSON_表,然后取消PIVOT:

挑选* 从…起 选择p* 来自表\u name t 交叉连接 JSON_表 t、 价值观, '$' 柱 路径“$.a”, b路径“$.b”, c路径“$.c” P 为a、b、c中的键取消Pivot值; 因此,对于一些示例数据:

创建表名 值CLOB约束确保_json检查值为json ; 在表_name中插入值“{a:value1,b:value2,c:value3}”; 这将产生:

然后:

选择get_键j.pos,t.value作为键, j、 价值观 来自表\u name t 交叉应用JSON_表 t、 价值观, '$.*' 柱 对于普通性, 值路径“$” J 产出:

小提琴