【问题标题】:Generate JSON from SQL Server从 SQL Server 生成 JSON
【发布时间】:2018-08-09 09:52:25
【问题描述】:

我需要从 sql 表生成 JSON 字符串(使用 FOR JSON AUTO 限定符),而其中一个(或多个)列存储为 json 字符串。

例如:

桌人:

First_Name    | Family_Name   |City      | Children
--------------+---------------+----------+---------------
David         |Bin            | Miami    |[{"First_Name" :"John","Family_Name":"Bin"}]
Mary          |Nis            | New York |[]

所需的结果将是:

[
 {"First_Name":"David",
  "Family_Name":"Bin",
  "City":"Miami",
  "Children": [{"First_Name" :"John",
                "Family_Name":"Bin"}
              ]
 },
 {"First_Name":"Mary",
  "Family_Name":"Nis",
  "City":"New York",
  "Children": []
 }
]

我当前的问题是,在结果中," 的所有出现都被转义,因此接收它的应用程序失败(非法 JSON)。

谁能建议SELECT 命令的正确措辞,以生成上面显示的结果?

提前致谢。

【问题讨论】:

  • 显示你当前使用的查询
  • SELECT First_Name , Family_Name , City , Children , FROM Person FOR JSON AUTO

标签: sql json sql-server-2016


【解决方案1】:

试试这个:

  SELECT        First_Name      , 
                Family_Name     , 
                City            , 
     JSON_QUERY(Children) 
  FROM Person FOR JSON AUTO ;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-21
    • 2019-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多