Не совсем уверен, что там, но почему ошибка говорит строку 1?Возможно, проблема в том, что вы фактически не выполняете всю процедуру.
Вы можете попробовать использовать функцию IF () следующим образом:
SET @thisVar = IF(@foo = @bar, 1, 0);
Я думаю, что это короче и чище дляпростые назначения if / else.