【发布时间】:2018-04-28 09:25:04
【问题描述】:
我有一个包含 3 列的表格:
id INT, name NVARCHAR(50), myData NVARCHAR(MAX)
myData 只保存一个类似
["Fingers"]
["Fingers","Right-"]
["Arm","Fingers","Left-"]
我想选择1列中的所有值,比如
Fingers
Fingers
Right-
Arm
Fingers
Left-
我该怎么办?我不相信 SQL Server 2014 可以读取 JSON 数据。
完成后,我可以通过执行SELECT DISTINCT 语句来选择每个唯一值。
我需要能够使用 T-SQL 执行此操作,并且无法创建任何函数来处理此问题,必须仅是 T-SQL。
非常感谢任何帮助。
【问题讨论】:
-
我不认为这是一个有效的 json 格式? JSON 不需要键:值对吗?
-
我认为您的 JSON 看起来像
[ { "Array": [ {"value":"Fingers"}, {"value":[{"value":"Fingers"},{"value":"Right-"}]}, {"value":[{"value":"Arm"},{"value":"Fingers"},{"value":"Left-"}]} ] } ]。 OPENJSON 非常适合您的解决方案:docs.microsoft.com/en-us/sql/relational-databases/json/… 请查看stackoverflow.com/a/37218450/6923146 -
@HardikMasalawala json 从 SqlServer 2016 支持。问题是,我们在 2014 年 :)
标签: sql sql-server tsql sql-server-2014