Prioridad de tipo de datos (Transact-SQL)

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Cuando un operador combina dos expresiones de tipos de datos distintos, el tipo de datos con la prioridad más baja se convierte primero al tipo de datos con la prioridad más alta. Si la conversión no es una conversión implícita admitida, se devuelve un error. Para un operador que combina expresiones de operandos que tienen el mismo tipo de datos, el resultado de la operación tiene ese tipo de datos.

SQL Server utiliza el siguiente orden de prioridad para los tipos de datos:

  1. tipos de datos definidos por el usuario (el más alto)
  2. sql_variant
  3. xml
  4. datetimeoffset
  5. datetime2
  6. datetime
  7. smalldatetime
  8. date
  9. time
  10. float
  11. real
  12. decimal
  13. money
  14. smallmoney
  15. bigint
  16. int
  17. smallint
  18. tinyint
  19. bit
  20. ntext
  21. text
  22. image
  23. timestamp
  24. uniqueidentifier
  25. nvarchar (nvarchar(max) incluido)
  26. nchar
  27. varchar (varchar(max) incluido)
  28. char
  29. varbinary (varbinary(max) incluido)
  30. binary (el más bajo)

Consulte también

Tipos de datos (Transact-SQL)
Expresiones (Transact-SQL)
CAST y CONVERT (Transact-SQL)