问题描述
我想从下面的表格中获取数据。
表名: 洞察
如何根据 “NA” 等区域从该洞察表中获取数据。但我不想通过使用like query来获取数据。
示例: country_codes = = IND然后它应该按照上表示例显示2条记录。另外,我想获取具有多个国家代码的数据。
Oracle版本:
甲骨文数据库11g企业版11.2.0.4.0-64位生产
PL/SQL版本11.2.0.4.0-生产
核心11.2.0.4.0生产
适用于Solaris的TNS: 版本11.2.0.4.0-生产
NLSRTL版本11.2.0.4.0-生产
表名: 洞察
Id | Name | JSON_DATA ----+------------+------------------------------------------------------------- 1 | Sitansu. | {"country_codes": ["IND"], "regions": ["ASIA"]} 2 | Sitansu. | {"country_codes": ["IND","USA"], "regions": ["ASIA","NA"]}复制
如何根据 “NA” 等区域从该洞察表中获取数据。但我不想通过使用like query来获取数据。
示例: country_codes = = IND然后它应该按照上表示例显示2条记录。另外,我想获取具有多个国家代码的数据。
Oracle版本:
甲骨文数据库11g企业版11.2.0.4.0-64位生产
PL/SQL版本11.2.0.4.0-生产
核心11.2.0.4.0生产
适用于Solaris的TNS: 版本11.2.0.4.0-生产
NLSRTL版本11.2.0.4.0-生产
专家解答
在11g上,您的选择是有限的。安装APEX可能是最简单的,因此您可以使用APEX_JSON。
这包括一个JSON到XML的转换函数。通过将数据传递给该数据,您可以使用XMLTable提取相关字段。这会进行XML到关系的转换。所以你可以像常规列一样查询数据:
但实际上,如果你正在做大量的JSON处理,你应该升级,这样你就可以使用内置的JSON函数。例如,JSON_table:
这包括一个JSON到XML的转换函数。通过将数据传递给该数据,您可以使用XMLTable提取相关字段。这会进行XML到关系的转换。所以你可以像常规列一样查询数据:
create table t ( c1 int, json_data varchar2(100) ); insert into t values ( 1, '{"country_codes": ["IND"], "regions": ["ASIA"]}' ); insert into t values ( 2, '{"country_codes": ["IND","USA"], "regions": ["ASIA","NA"]}' ); commit; select * from t, xmltable( '/json/regions/row' passing apex_json.to_xmltype ( json_data ) columns code varchar2(100) path '/' ) x where x.code = 'NA'; C1 JSON_DATA CODE 2 {"country_codes": ["IND","USA"], "regions": ["ASIA","NA"]} NA复制
但实际上,如果你正在做大量的JSON处理,你应该升级,这样你就可以使用内置的JSON函数。例如,JSON_table:
select * from t, json_table ( json_data, '$.regions[*]' columns ( code path '$' ) ) j where j.code = 'NA'; C1 JSON_DATA CODE 2 {"country_codes": ["IND","USA"], "regions": ["ASIA","NA"]} NA复制
文章转载自ASKTOM,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
【纯干货】Oracle 19C RU 19.27 发布,如何快速升级和安装?
Lucifer三思而后行
656次阅读
2025-04-18 14:18:38
Oracle RAC 一键安装翻车?手把手教你如何排错!
Lucifer三思而后行
626次阅读
2025-04-15 17:24:06
Oracle数据库一键巡检并生成HTML结果,免费脚本速来下载!
陈举超
531次阅读
2025-04-20 10:07:02
【ORACLE】记录一些ORACLE的merge into语句的BUG
DarkAthena
480次阅读
2025-04-22 00:20:37
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
476次阅读
2025-04-17 17:02:24
一页概览:Oracle GoldenGate
甲骨文云技术
460次阅读
2025-04-30 12:17:56
【ORACLE】你以为的真的是你以为的么?--ORA-38104: Columns referenced in the ON Clause cannot be updated
DarkAthena
450次阅读
2025-04-22 00:13:51
火焰图--分析复杂SQL执行计划的利器
听见风的声音
405次阅读
2025-04-17 09:30:30
3月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
369次阅读
2025-04-15 14:48:05
OR+DBLINK的关联SQL优化思路
布衣
345次阅读
2025-05-05 19:28:36