Precedenza dei tipi di dati (Transact-SQL)
Si applica a: SQL Server database SQL di Azure Istanza gestita di SQL di Azure endpoint di analisi SQL di Azure Synapse Analytics Platform System (PDW) in Microsoft Fabric Warehouse nel database SQL di Microsoft Fabric in Microsoft Fabric
Quando un operatore combina espressioni di tipi di dati diversi, il tipo di dati con precedenza inferiore viene per prima cosa convertito nel tipo di dati con precedenza superiore. Se la conversione non è una conversione implicita supportata, viene generato un errore. Se le espressioni dell'operando combinate dall'operatore hanno lo stesso tipo di dati, questo sarà il tipo di dati del risultato dell'operazione.
Per i tipi di dati SQL Server usa l'ordine di precedenza seguente:
- Tipi di dati definiti dall'utente (superiore)
- json
- sql_variant
- xml
- datetimeoffset
- datetime2
- datetime
- smalldatetime
- date
- time
- float
- real
- decimal
- money
- smallmoney
- bigint
- int
- smallint
- tinyint
- bit
- ntext
- Testo
- Immagine
- timestamp
- uniqueidentifier
- nvarchar, incluso nvarchar(max)
- nchar
- varchar, incluso varchar(max)
- char
- varbinary, incluso varbinary(max)
- binary (inferiore)