SSMS导出查询结果到Excel或CSV

时间:2017-08-23 21:37:06

标签: sql sql-server ssms-2014

我正在尝试将查询结果导出为CSV,然后最终导出Excel。

我的问题是,我的一个列中有逗号,逗号中断Excel在正确的位置解析CSV。

我没有对数据库的写权限,因此将查询结果放入表中,然后将该表导出到excel不是一个选项。

有没有办法导出到Excel,或者至少包含带有逗号的列的CSV?

5 个答案:

答案 0 :(得分:3)

1在对象资源管理器窗口中右键单击您的数据库,转到任务 - >导出数据

2选择Sql Server本机客户端作为源,输入连接参数

3选择Excel作为目的地

4在下一个屏幕上粘贴您的选择查询

5浏览剩余的屏幕,确保事情看起来正确

6利润

答案 1 :(得分:2)

我处理此问题的方法是改用制表符分隔的文件(假设数据中没有制表符)

Step one to export tsv

Selecting the tsv option

另一种尝试的方法是将表直接从SSMS中的查询结果复制并粘贴到Excel中,然后从那里保存文件。

答案 2 :(得分:0)

如果您可以查询数据库,则可以使用类似这样的内容来检索没有列的数据。

DECLARE @String varchar(25) = 'Comman delimited, value.'

SELECT REPLACE(@String, ',', ' ') AS ScrubbedValue

答案 3 :(得分:0)

使用替换功能将逗号替换为管道或其他字符。在Excel中,如果需要,可以使用Excel的替换将管道恢复为逗号。

select
 Date     = a.Date_Time,
 Action   = Type,
 Username = a.username,
 Desc     = replace( description,',','|'),  -- replace pesky commas
from
 dbo.AuditLog a
where
 a.Date_Time > DATEADD( DAY, -1, getdate()) 

答案 4 :(得分:0)

您可以将TOAD用于SQL Server。它已导出为Excel。这比csv更好,因为它保留了数据类型。 即使在试用模式下以及试用期结束后,此功能也可以使用。我只用Toad来出口到excel。