Batch file SQL查询批处理文件到文本的间距过大

Batch file SQL查询批处理文件到文本的间距过大,batch-file,text-files,sqlcmd,Batch File,Text Files,Sqlcmd,我创建了一个.bat文件,该文件执行SQL查询,并将结果显示在记事本打开的.txt文件中 一切都执行得很好,但是当结果显示在.txt文件中时,行之间的间距太大 我怎样才能消除额外的间距 这是我正在使用的批处理代码: sqlcmd -S SQLServer -i c:\scripts\Query3.sql -U user -P pass -o outputfile.txt @notepad outputfile.txt 我将在Query3.sql文件中使用以下命令 rtrim(ltrim(现场)

我创建了一个
.bat
文件,该文件执行SQL查询,并将结果显示在记事本打开的.txt文件中

一切都执行得很好,但是当结果显示在.txt文件中时,行之间的间距太大

我怎样才能消除额外的间距

这是我正在使用的批处理代码:

sqlcmd -S SQLServer -i c:\scripts\Query3.sql -U user -P pass -o outputfile.txt
@notepad outputfile.txt

我将在Query3.sql文件中使用以下命令

rtrim(ltrim(现场))


其中field是从SQL中提取的字段。“rtrim”和“ltrim”函数删除可能是您的问题的空白。

-W
参数传递到
sqlcmd.exe

-W
此选项从列中删除尾随空格。准备要导出到其他应用程序的数据时,请将此选项与-s选项一起使用。不能与-y或-y选项一起使用


-

太好了!W命令对我有效。我现在唯一的问题是它实际上太近了。我该如何在它们之间留出3到4个空间呢?这有点难。您可以使用
-s
指定一个通常在输出中找不到的分隔符(可能是
或其他什么),然后(以某种方式)用几个空格替换它。批量替换字符串是可能的,但并不有趣。不幸的是,您只能指定一个字符作为列分隔符,因此
-s”“
将不起作用。