【发布时间】:2016-12-12 06:03:30
【问题描述】:
我正在使用 SQL Server 2012。我被分配了一项任务,其中我的表 Sample 的一列 (JsonText) 包含 json 数据。我想传递解析该数据并插入另一个表的列(Test)。我在网上搜索到 SQL Server 2016 支持“openjson”。在 SQL Server 2012 中如何做?
表 1:示例
Id JsonText Active
JsonText
webaddress?{'data':'{"PId": "XXXX","Status": "YES","Name":"XXX","Address":"XXXX","MobileNumber":"xxx"}'}
我只对 'PID,Address,MobileNumber' 列感兴趣。
这样的表测试结构
Id, PID, Address, MobileNumber
【问题讨论】:
-
检查this。抱歉,这是 2016 年的,您需要 2012 年的。忽略此评论。
-
找到了this 可以解决你的问题(没查过,但看起来是合理的解决方案)。
-
在 2016 年之前,您需要像 this one 这样的专业脚本,或者我相信使用 CLR。看看这些以前的 SO 问题及其答案:Parse JSON string in sql 和 Parse JSON in TSQL。
-
Parse JSON in TSQL的可能重复
标签: sql json sql-server-2012