我去嘗試的UNPIVOT查詢,這是我的全部新馬丁的建議。使用SSIS,我現在將查詢導出到一個文本文件,格式完全符合我需要它的幾秒鐘的運行時間。我正在使用下面的查詢,以「:」作爲列分隔符。偉大的建議馬丁!
SELECT 'START_FILE' as FieldName, '' as 'FieldValue'
UNION ALL
select 'DATE' as FieldName, getDate() as 'FieldValue'
UNION ALL
SELECT FieldName, FieldValue
FROM
(
SELECT
Cast(Column1Name as varchar) as VendorColumn1Name,
Cast(Column2Name as varchar) as VendorColumn2Name,
Cast(Column3Name as varchar) as VendorColumn3Name
FROM MyTable
) c
UNPIVOT
(
FieldValue for FieldName IN(VendorColumn1Name, VendorColumn2Name, VendorColumn3Name)
) as p
UNION ALL
SELECT 'END_FILE' as FieldName, '' as 'FieldValue'
這是純文本格式。你甚至不應該考慮XML。由於您使用的是SSIS,因此您可以創建一個腳本任務,以這種格式將數據寫入文件。 – 2010-07-19 12:59:59