Почему решение мне не показывает ошибку в условной одной из SQL Server?

У меня есть таблица, которая содержит колонну типа varchar, но когда я это сравниваю с типом int с выражением CASE, решение не бросает мне никакой ошибки.

create table tabla (
    valor varchar(1)
)

insert into tabla values ('1'), ('a')

select
    case when ISNULL(valor, '') = 1 then 'r' else 'r' end
from tabla

Но когда я меняю решение из-за:

select
    case when ISNULL(valor, '') = 1 then 'r' else 'R' end
from tabla

Только что меня бросает ошибка превращения:

Превращение failed when converting the varchar оцените 'в' to дату type int.

5
задан 13.02.2017, 07:54
0 ответов