Убедитесь, что у вас есть только один оператор SELECT в конце вашего SP. Итак, как-то так:
IF something
DO something
SET variables
ELSE
SET variables
SELECT variables
Кроме того, переименуйте ваш столбец в операторе выбора и, возможно, приведите его к правильному типу данных. Примерно так:
SELECT CAST(@variable AS DataType) AS [ColumnName];
Я столкнулся с этим неделю назад, потому что у меня было 2 оператора SELECT в SP, и они облажались. SP всегда делал то, что предполагалось, но всегда возвращал ноль обратно. Поскольку я переключился на то, что написал выше, это сработало как шарм.
Надеюсь, это поможет вам