2013-10-18 47 views
0

我有一個報告,其中WHERE子句由參數@param確定。參數中的SSRS字符串更改查詢

SELECT SOMESTUFF FROM SOMETABLE WHERE thing = @param

所以在運行時,用戶決定如何從一個下拉框運行報告我已經添加值的參數。我想做一個選項來運行我所定義的所有值。我一直無法弄清楚代碼來實現這一點。

所以,如果我已經給參數值A, B, C,我該如何告訴它在表達式中完成它們?

+1

可能的重複http://stackoverflow.com/questions/14893789/ssrs-how-to-add-all-option-to-ssrs-dropdown-filter/ –

+0

@IanPreston我讀過,我做了一個多值參數。我特別想看看如何使用參數從表達式傳遞sql。 – d90

回答

0

這真的取決於查詢,數據類型等

假設在你的榜樣的「東西」的本質是一個int和您的參數是一個逗號分隔的int值列表,你可以在使用IN子句您的查詢。

SELECT SOMESTUFF FROM SOMETABLE WHERE IN(@參數)事情

儘管在現實中,這將需要在SSRS

=表達式 「SELECT SOMESTUFF FROM SOMETABLE WHERE事情(」 + @參數。價值+「)」

從你的例子中可以看出它們可能是字符串(A,B,C),在這種情況下,你需要在每個字符上放一個單引號才能工作。

+0

東西是文字。我試圖在我的報告中基本運行一個查詢來查找用於庫存報告的筆記本電腦,臺式機和服務器。我希望使用該參數來更改我的數據集中的where子句,使其成爲其中的一個或全部。我正在考慮使參數看起來像 '桌面'或東西='筆記本電腦'或東西='服務器' 但那不工作。 – d90