如何从数据库PARENT_DATA字段的JSON内容中提取数字?
提取JSON字段中orderERPNumber值的SQL查询方法
不同数据库对JSON字段的解析语法不同,以下是几种主流数据库的实现方案:
MySQL/MariaDB
可以用JSON_EXTRACT()函数或简化的->>操作符直接提取目标值:SELECT JSON_EXTRACT(PARENT_DATA, '$.orderERPNumber') AS orderERPNumber FROM IONV_SYNC.IONVS_CRITICAS; -- 更简洁的写法 SELECT PARENT_DATA->>'$.orderERPNumber' AS orderERPNumber FROM IONV_SYNC.IONVS_CRITICAS;PostgreSQL
使用->>操作符或json_extract_path_text()函数:SELECT PARENT_DATA->>'orderERPNumber' AS orderERPNumber FROM IONV_SYNC.IONVS_CRITICAS; -- 函数式写法 SELECT json_extract_path_text(PARENT_DATA, 'orderERPNumber') AS orderERPNumber FROM IONV_SYNC.IONVS_CRITICAS;SQL Server
使用JSON_VALUE()函数定位目标值:SELECT JSON_VALUE(PARENT_DATA, '$.orderERPNumber') AS orderERPNumber FROM IONV_SYNC.IONVS_CRITICAS;
核心逻辑都是通过JSON路径$.orderERPNumber精准定位到orderERPNumber对应的数字值,直接提取即可。
内容的提问来源于stack exchange,提问作者Ryan Gabriel
相关产品推荐
相关产品推荐

