将SQL表导出为固定长度格式
我的表中当前有如下格式的数据:将SQL表导出为固定长度格式,sql,sql-server,sql-server-2008,concatenation,Sql,Sql Server,Sql Server 2008,Concatenation,我的表中当前有如下格式的数据: County Office First Name Last Name 01 01 John Smith 99 01 Jane Cole 我需要使用SQL将其导出到一个固定长度的文本文件中。输出应如下所示: 0101JohnSmith 9901JaneCole 有人知道怎么做吗?假设所有列都不为空: SELECT [County]
County Office First Name Last Name
01 01 John Smith
99 01 Jane Cole
我需要使用SQL将其导出到一个固定长度的文本文件中。输出应如下所示:
0101JohnSmith
9901JaneCole
有人知道怎么做吗?假设所有列都
不为空
:
SELECT [County] -- already matches length of 2?
+ [Office] -- ... ditto
+ right(' ' + [First Name], 20)
+ right(' ' + [Last Name], 20)
FROM tbl
是的,上面有20个空格。因此,[名字]
和[姓氏]
名字将被空白填充到左边,并且长度始终为20个字符
或者,如果要将字符串填充到右侧:
请问是什么数据库平台?您想要固定长度还是不需要空格?有一个很大的区别。数据库是SQL Server 2008,我想把它写到一个固定长度的文件中。字符1-2=县代码,3-4个办公室,5-25=名字,25-45=姓氏。我知道你在干什么。我想现在我想知道如何将其写入.txt文件?这在SQL'08中可能吗?@evglynn:有很多这样的例子。
left([First Name] + ' ', 20)