Выражение ssrs для разделения строки возможно? - PullRequest
5 голосов
/ 03 августа 2011

так что в моем запросе у меня есть select columnx from tblz

, он возвращает 001.255556.84546

Я хочу иметь возможность разделить это через '.'и поместите его в три столбца.

column1 = 001
column2 = 255556
column3 = 84576

возможно ли это?

Ответы [ 4 ]

13 голосов
/ 28 апреля 2012

Для информации, в 2008 году они не работают, вы должны сделать следующее:

=Split(Fields!returnedValue.Value, ".").GetValue(0)
5 голосов
/ 03 августа 2011

Создайте три вычисляемых поля со следующими выражениями:

=(Split(Fields!columnx.Value, ".")).GetValue(0)
=(Split(Fields!columnx.Value, ".")).GetValue(1)
=(Split(Fields!columnx.Value, ".")).GetValue(2)

Я не уверен, что это работает или нет, возможно, попробуйте. Возможно, вам придется использовать оператор IIF () для проверки значений перед их получением.

3 голосов
/ 03 августа 2011

В SSRS вы указываете имя поля, указываете его в качестве разделителя. Поскольку вы не присваиваете переменную как таковую, вам нужно указать ей, какую часть строки разделения использовать. В вашем примере

=Split(Fields!returnedValue.Value,".")(0)
=Split(Fields!returnedValue.Value,".")(1)
=Split(Fields!returnedValue.Value,".")(2)

Вы бы заменили returnValue на любое фактическое имя поля и поместили каждое из них в столбцы 1–3 соответственно.

1 голос
/ 29 апреля 2016

Этот ответ был изначально опубликован в вопросе, а не опубликован как ответ:

=(Split(Fields!columnx.Value,".")).GetValue(0)
=(Split(Fields!columnx.Value,".")).GetValue(1)
=(Split(Fields!columnx.Value,".")).GetValue(2)
...