2013-05-08 2 views
0

У меня есть 5 запросов, которые необходимо выводить в файл с фиксированной длиной. Безопасность не вызывает беспокойства, поэтому, если мне нужно что-то открыть для более простого решения, все в порядке.Вывод запросов sql к файлу

Так что для упрощения скажем, у меня были эти два запроса:

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

И я хочу, результаты будут выводиться в фиксированный файл длиной примерно так:

Walmart 123 456 
0000023495832800023 

я, очевидно, может» t объединяйте запросы вместе, так как они имеют разные столбцы, поэтому я предполагаю, что мне нужно будет добавлять к файлу, а не только перезаписывать его. Есть ли способ сделать это, который может быть автоматизирован и не требует от меня использования инструментов за пределами sql-сервера?

+0

Почему вы не можете просто запускать запросы отдельно? собирайте данные, затем напишите файл. –

+0

Укажите, что вы планируете использовать СУБД, добавив соответствующий тег (Oracle, SQL Server, MySQL и т. Д.). Могут быть ответы, которые используют преимущества языка или функций продукта, которые не поддерживаются повсеместно. Кроме того, пометив его конкретными СУБД, ваш вопрос может привлечь внимание от людей, более подходящих для ответа на него. – Taryn

+0

как насчет: http://ask.sqlservercentral.com/questions/7080/export-results-of-a-query-into-a-csvtxt-file.html – cpoDesign

ответ

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 или некоторым форматированием в зависимости от вашей СУБД

+0

Извините, не отметили это как mssql. Не то, чтобы я не мог сделать эквивалент в mssql, но меня больше интересует, как я могу добавить результаты каждого запроса в файл, чем взломать их в один запрос, если это возможно. –