2013-03-20 42 views

回答

1

如果要將兩個不同查詢的結果組合到一行中,但有兩列,則必須確保兩者中定義的字段類型相同,並且與輸出變量的類型定義相匹配。也就是說,如以下示例所示,Row1必須與變量test1的類型相同,並且Row2的類型必須與變量test2的類型相同。

我運行了一個測試,使用你似乎工作的場景。

1)設置合併兩個嵌套查詢結果的以下查詢。

SELECT 
    (SELECT Row2 FROM Tests WHERE TestID = 4) AS Row1 
    ,(SELECT Row2 FROM Tests WHERE TestID = 5) AS Row2 

2)由於返回的結果的類型都是VARCHAR(或字符串),我在一個SSIS包建立與數據類型「字符串」的變量稱爲TEST1和稱爲TEST2第二可變。

3)創建一個執行SQL任務,爲SQLStatement定義上述SQL語句並將ResultSet設置爲「單行」。

4)對於結果集,我添加了兩個新行。第一個結果名稱= 0,變量名稱爲「User :: test1」,第二個結果名稱= 1,變量名稱爲「User :: test2」。這裏的想法是,來自查詢的Row1的結果將轉到test1,而Row2將轉到test2。

我執行了任務,它成功了。

讓我知道這是否有幫助。

謝謝。

+0

嘿Kosh,謝謝你的迴應。這就是我如何實現我的一些要求。我認爲應該有一些簡單的程序來達到同樣的效果。不管怎麼說,還是要謝謝你。 – Maximus 2013-03-21 04:25:17

+0

Hi Siva,這很簡單,因爲它沒有在VB或C#中編寫自定義腳本,但這會比我概述的更復雜。你可以點擊向上箭頭指出我的答案是有用的(因爲它證實了你已經有的程序)?謝謝。 – 2013-03-22 19:28:23

相關問題