SSRS - Использование условия IF в наборе данных
У меня есть структура таблицы на месте. Но данные, которые я вставляю в эти данные, варьируются в зависимости от входных данных.
Input A - Query X
Input B - Query Y
Чтобы достичь этого, я подумал, что я вставлю условие IF в набор данных и сделаю его прямым к "Query X" или "Query Y" на основе "Input".
Я попробовал это,
IF(Input=='Hello')
(
...
)
Но это бросило ошибку. Можете ли вы помочь мне, как действовать здесь? Есть ли лучший способ, которым я могу достичь моего требования?
1 ответ
Я бы посоветовал не использовать оператор IF по соображениям производительности, но если необходимо, синтаксис в SQL:
if ( 'blah' = 'blah' )
begin
--do stuff
end
Некоторые другие варианты, которые вы могли бы рассмотреть, вместо IF:
Используйте хранимые процедуры, используйте "главный" sproc, вызываемый отчетом, который затем выполняет соответствующий sproc на основе полученных параметров.
ОБЪЕДИНЯЙТЕ ВСЕ ваши потенциальные запросы вместе и включите строку в предложение WHERE, чтобы только те запросы, результаты которых вы хотите получить, возвращали любые строки.
Если различия в ваших запросах достаточно просты, возможно, вы можете просто использовать операторы CASE для применения правильной логики?