Поделиться через


Приоритет типов данных (Transact-SQL)

Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure конечной точке аналитики платформы Аналитики Azure Synapse Analytics (PDW) в Microsoft Fabric Хранилище в Microsoft Fabric

Если оператор сочетает выражения различных типов данных, тип данных с меньшим приоритетом сначала преобразуется в тип данных с большим приоритетом. Если неявное преобразование не поддерживается, возвращается ошибка. Если оператор сочетает выражения операндов с одинаковым типом данных, результат операции будет иметь тот же тип данных.

SQL Server использует следующий порядок приоритета для типов данных:

  1. определяемые пользователем типы данных (высший приоритет);
  2. json
  3. sql_variant
  4. xml
  5. datetimeoffset
  6. datetime2
  7. datetime
  8. smalldatetime
  9. date
  10. time
  11. float
  12. real
  13. десятичное
  14. money
  15. smallmoney
  16. bigint
  17. int
  18. smallint
  19. tinyint
  20. bit
  21. ntext
  22. text
  23. Изображение
  24. timestamp
  25. uniqueidentifier
  26. nvarchar, включая nvarchar(max)
  27. nchar
  28. varchar, включая varchar(max)
  29. char
  30. varbinary, включая varbinary(max)
  31. binary (низший приоритет)