2016-11-07 17 views
0

SSRS経由で複数の値をクエリに渡そうとしています。それらは先行ゼロのないIDです。 IDの合計桁数が7(87886,88352)になるように先行ゼロを追加したい(0087886,0088352)。私はカーソルを使用するか、一時テーブルに入れるというアイデアを持っていましたが、私が何をするかにかかわらず、私はIDのリストではあまりできない同じ問題にぶつかります。何を試しても、いつかはリストを動的に処理する必要があります。動的にゼロを追加したり、値を数えたり、行をテーブルに追加したりします。いずれにしても、SSRSからのリストをこのように扱う方法がわかりません。複数値SSRSの書式設定パラメータ

それは私が行っている考えです。@ pIDsはSSRSのリストです。

答えて

0

代わりデータから先行ゼロを削除してください:のデータ型

SELECT * 
FROM PERSON 
WHERE -1 < CHARINDEX(',' + CAST(CAST(ID AS INT) AS VARCHAR(7)) + ',', ','[email protected]+',') 
+0

私は申し訳ありませんが、これがどのように働くか、私は従わない14を返します。先行ゼロを削除するために、各個別の値をintとしてキャストしていることがわかりますが、実際には各値を個別に解析する方法には従いません。何とかコンマのインデックスで? – user3908206

0

まず、予告こと:

RIGHT('0000000' + @pIDs,7) 

は整数です。あなたのID列は '0087886'形式で表示されるので、あなたのID列はint型ではありません。第2に、例えば、

select RIGHT('0000000' + 14,7) 

はない0000014.

関連する問題