我有一个SQL查询返回一些行。我怎样才能改变它,使查询的输出为CSV格式?如何获取CSV格式的SQL查询结果?
我发现了一种以XML格式生成结果的方法,但由于XML的性质,结果太大而无法使用。
该查询是非常大的(这不是很重要),所以我不会在这里发布它。这是一个链接。 Link
I don't want the SQL query to save the result as a CSV file.
我有一个SQL查询返回一些行。我怎样才能改变它,使查询的输出为CSV格式?如何获取CSV格式的SQL查询结果?
我发现了一种以XML格式生成结果的方法,但由于XML的性质,结果太大而无法使用。
该查询是非常大的(这不是很重要),所以我不会在这里发布它。这是一个链接。 Link
I don't want the SQL query to save the result as a CSV file.
像这样:
select field1
, '","'
, field2
, '","'
etc
是
试试这个
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,'')
这不是一个完整的解决方案。你只有这个设置为id域的工作。如果你看@ @ user3465882提供的链接有一些可能有逗号和双引号的字段。此外,您不包括列的标题。有关一些标准规则,请参阅https://en.wikipedia.org/wiki/Comma-separated_values。 – chris
我误读了,并道歉。 – Burki
问题是,这是一次性查询还是需要多次运行? – chris
以编程方式多次。 – user3465882