Вот FonzSummary, чтобы помочь в понимании вопроса - Правильно: http://imgur.com/5eLJCgv, Неправильно: http://imgur.com/a0Ssp0eКак настроить выход быть EMPTY, в настоящее время показывает ROW
Издание: У меня возникли некоторые проблемы с отображением пустой выход ... I хочу вывод не отражает абсолютно ничего, если результатов нет, но до сих пор я не увенчался успехом.
SET @AddedOutput =
CASE WHEN @AddedList IS NULL THEN NULL
ELSE 'Kids added to Santas Naughty List'[email protected]
END
SET @RemovedOutput =
CASE WHEN @RemovedList IS NULL THEN NULL
ELSE 'Kids removed from Santas Naughty List'[email protected]
END
--Final Output
SELECT CASE
WHEN @AddedOutput IS NULL THEN (SELECT TOP 0 NULL)
ELSE @AddedOutPut END as 'List Changes'
UNION
SELECT CASE
WHEN @RemovedOutput IS NULL THEN (SELECT TOP 0 NULL)
ELSE @RemovedOutput END as 'List Changes'
Чтобы еще более усложнить вещи, как только я добавил (Select TOP 0 NULL) на мой прок, действительные результаты больше не работают! Почему это делает попытку конвертировать в Int? Я знаю, что результаты не будут Int!
Msg 245, Level 16, State 1, Procedure SantaList_TEST, Line 72
Conversion failed when converting the varchar value 'Kids added
to Santas Naughty List 27065, 28538, 28539' to data type int.
Тег dbms used! Это не похоже на ANSI SQL ... – jarlh