我正在使用SQL Server 2008,想将表格数据转换为json格式。我能否通过执行查询直接进行转换?
我已经创建了一个存储过程,可以将您的表格输出为JSON格式。您可以在以下链接中找到它:
运行存储过程后,您可以通过执行以下调用来输出您的表格:
EXEC SQLTableOrViewToJSON 'MyTable', 'C:\WhereIStowMyJSON\'
SQL Server 2016中增加了格式化查询结果的内置支持,并且在Azure数据库中也可用。
在旧版本中,您需要使用CLR或一些繁重的TSQL,例如:
以上解决方案似乎过于复杂;从2008年开始,SQL Server支持以下语法(来自DBA StackExchange的答案)
SELECT * FROM dbo.x FOR JSON AUTO;
以上查询返回一个单独的JSON格式列,其外观如下(假设dbo.x
包含相应类型的col1
〜col4
列):
[{"col1":"val1","col2":"val2","col3":5,"col4":"2019-02-11"}]