Приоритет типов данных (Transact-SQL)
Если оператор связывает два выражения различных типов данных, то по правилам приоритета типов данных определяется, какой тип данных имеет меньший приоритет и будет преобразован в тип данных с большим приоритетом. Если неявное преобразование не поддерживается, возвращается ошибка. Если оба операнда выражения имеют одинаковый тип данных, результат операции будет иметь тот же тип данных.
В SQL Server используется следующий приоритет типов данных:
определяемые пользователем типы данных (высший приоритет);
sql_variant;
xml;
datetimeoffset;
datetime2;
datetime;
smalldatetime;
date;
time;
float;
real;
decimal;
money;
smallmoney;
bigint;
int;
smallint;
tinyint;
bit;
ntext;
text;
image;
timestamp;
uniqueidentifier;
nvarchar (включая nvarchar(max));
nchar;
varchar (включая varchar(max));
char;
varbinary (включая varbinary(max));
binary (низший приоритет).
См. также