Precedência de tipo de dados (Transact-SQL)
Aplica-se a: SQL Server
Banco de Dados SQL do Azure
Instância Gerenciada de SQL do Azure
Azure Synapse Analytics
Analytics Platform System (PDW)
Ponto de extremidade de análise de SQL no Microsoft Fabric
Warehouse no Microsoft Fabric
Banco de Dados SQL no Microsoft Fabric
Quando um operador combinar duas expressões com tipos de dados diferentes, o tipo de dados com a precedência mais baixa será convertido no tipo de dados de maior precedência. Se a conversão não for uma conversão implícita com suporte, será retornado um erro. Para um operador combinando expressões de operando que tem o mesmo tipo de dados, o resultado da operação terá esse tipo de dados.
O SQL Server usa a seguinte ordem de precedência para tipos de dados:
- UDT (tipos de dados definidos pelo usuário) (maior)
- json
- sql_variant
- xml
- datetimeoffset
- datetime2
- datetime
- smalldatetime
- date
- time
- float
- real
- decimal
- money
- smallmoney
- bigint
- int
- smallint
- tinyint
- bit
- ntext
- text
- imagem
- timestamp
- uniqueidentifier
- nvarchar, incluindo nvarchar(max)
- nchar
- varchar, incluindo varchar(max)
- char
- varbinary, incluindo varbinary(max)
- binary (mais baixo)