Priorité des types de données (Transact-SQL)
S’applique à : SQL Server Base de données Azure SQL Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) Point de terminaison d'analyse SQL dans Microsoft Fabric Entrepôt dans Microsoft Fabric Base de données SQL dans Microsoft Fabric
Quand un opérateur combine des expressions de types de données différents, le type ayant la priorité plus faible est converti en premier dans le type ayant la priorité plus élevée. Si la conversion n’est pas une conversion implicite prise en charge, une erreur est retournée. Pour un opérateur combinant des expressions d’opérandes ayant le même type de données, le résultat de l’opération a également ce type de données.
SQL Server utilise l'ordre de priorité suivant pour les types de données :
- types de données définis par l'utilisateur (plus haut niveau de priorité)
- json
- 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, y compris nvarchar(max)
- nchar
- varchar, y compris varchar(max)
- char
- varbinary, y compris varbinary(max)
- binary (minimum)