将sql查询输出到文件

时间:2013-05-08 21:19:42

标签: sql sql-server-2008 output

我有5个查询需要输出到固定长度的文件。安全性并不是一个问题所以如果我需要打开一些更简单的解决方案就可以了。

所以,为了简化,我说我有两个问题:

Select 'Walmart   ' Company, '123  ' StoreNo, '456   ' InvoiceNo
Select '00000234958328' UPC, '00023' Quantity

我希望将结果输出到固定长度的文件中,如下所示:

Walmart   123  456   
0000023495832800023

我显然无法将查询结合在一起,因为它们有不同的列,所以我想我需要能够附加到文件而不是只能覆盖它。有没有办法做到这一点,可以自动化,不需要我使用sql server以外的工具?

1 个答案:

答案 0 :(得分:0)

一个简单的黑客怎么样......

Select 'Walmart   ' , '123  ' , '456   '  from dual
union
Select '00000234958328' , '00023' , null from dual;

或者真的 - 因为你想要每行一个固定长度的字符串,只需将它们连接起来就像这样:

Select company || storeno || invoiceno  from dual
union
Select upc || qty from dual;

您可能希望使用RPAD或某些格式,具体取决于您的DBMS