数据类型优先级 (Transact-SQL)
适用于: SQL Server Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics 分析平台系统 (PDW) Microsoft Fabric 中的 SQL 分析端点 Microsoft Fabric 中的仓库
当两个不同数据类型的表达式用运算符组合后,优先级较低的数据类型首先转换为优先级较高的数据类型。 如果此转换不是所支持的隐式转换,则返回错误。 对于组合具有相同数据类型的操作数表达式的运算符时,运算的结果便为该数据类型。
SQL Server 对数据类型使用以下优先级顺序:
- 用户定义数据类型(最高)
- json
- sql_variant
- xml
- datetimeoffset
- datetime2
- datetime
- smalldatetime
- date
- time
- float
- real
- decimal
- money
- smallmoney
- bigint
- int
- smallint
- tinyint
- bit
- ntext
- text
- 图像
- timestamp
- uniqueidentifier
- nvarchar,包括 nvarchar(max)
- nchar
- varchar,包括 varchar(max)
- char
- varbinary,包括 varbinary(max)
- binary(最低)