2017-07-21 50 views
0

我有一个SQL查询返回一些行。我怎样才能改变它,使查询的输出为CSV格式?如何获取CSV格式的SQL查询结果?

我发现了一种以XML格式生成结果的方法,但由于XML的性质,结果太大而无法使用。

该查询是非常大的(这不是很重要),所以我不会在这里发布它。这是一个链接。 Link

I don't want the SQL query to save the result as a CSV file. 
+0

我误读了,并道歉。 – Burki

+0

问题是,这是一次性查询还是需要多次运行? – chris

+0

以编程方式多次。 – user3465882

回答

0

像这样:

select field1 
, '","' 
, field2 
, '","' 
etc 
1

试试这个

DECLARE @query nvarchar(max) 

select @query = STUFF( (SELECT N',' + cast(id as nvarchar) 
from TableX 
--some WHERE clause here as well 

FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)') ,1,1,'') 

select @query 

NO变量:

select STUFF( (SELECT N',' + cast(id as nvarchar) 
from TableX 
FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)') ,1,1,'') 
+0

这不是一个完整的解决方案。你只有这个设置为id域的工作。如果你看@ @ user3465882提供的链接有一些可能有逗号和双引号的字段。此外,您不包括列的标题。有关一些标准规则,请参阅https://en.wikipedia.org/wiki/Comma-separated_values。 – chris