簡體   English   中英

將SSRS參數傳遞給SQL查詢

[英]Pass SSRS parameter to SQL query

我已經構建了一個SSRS報告,該報告應該查看來自具有相似名稱的幾個表之一的數據 - 即table001,table010,table011等。當我構建報告時,我只包括其中的三個表,十幾個。 一切正常,直到我將所有其余表添加到查詢中,使用多個SELECT語句UNIONed; 它試圖對如此多的數據進行排序,以便花費近半個小時來呈現報告。 那不行。

有沒有辦法將SSRS參數傳遞給SQL查詢,指定要訪問的表?

根據您的評論,您可以執行以下操作

DECLARE @Parameter NVARCHAR(15) = 'Foo'

SELECT CASE 
WHEN @Parameter IN ('Foo', 'Bar')
    THEN (
            SELECT *
            FROM table001
         ) 
WHEN @Parameter IN ('Foobar')
    THEN (
            SELECT *
            FROM table002
         ) 
ELSE
         (
            SELECT *
            FROM table003
         )
END


交替

SELECT CASE @Parameter 
WHEN 'Foo'
    THEN (
            SELECT *
            FROM table001
         ) 
WHEN 'Bar'
    THEN (
            SELECT *
            FROM table002
         ) 
WHEN 'Foobar'
    THEN (
            SELECT *
            FROM table003
         ) 
ELSE
    (
        SELECT *
        FROM @table004
    )
END

你有沒有關注過MSDN教程? 這也很好: http//sql-bi-dev.blogspot.com/2010/07/report-parameters-in-ssrs-2008.html

請分享您嘗試過的內容以及遇到問題的地方。 實質上,您在報表中定義參數並將其包含在查詢中。 SSRS提供參數值(或通過用戶輸入接收),然后將最終查詢傳遞給數據庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM