将SQL表导出为固定长度格式

evg*_*ynn 2 sql sql-server concatenation sql-server-2008

我目前在表格中有数据格式如下:

County     Office     First Name     Last Name
01         01         John           Smith
99         01         Jane           Cole
Run Code Online (Sandbox Code Playgroud)

我需要使用SQL将其导出到固定长度的文本文件中.输出应如下所示:

0101JohnSmith
9901JaneCole
Run Code Online (Sandbox Code Playgroud)

有谁知道如何做到这一点?

Erw*_*ter 6

假设所有列都是NOT NULL:

SELECT [County]         -- already matches length of 2?
     + [Office]         -- ... ditto
     + right('                    ' + [First Name], 20)
     + right('                    ' + [Last Name], 20)
FROM   tbl
Run Code Online (Sandbox Code Playgroud)

是的,那是一串20个空白.因此[First Name],[Last Name]名称将在左侧填空,并且始终为20个字符.

或者,如果您希望将字符串填充到右侧:

left([First Name] + '                    ', 20)
Run Code Online (Sandbox Code Playgroud)