資料類型優先順序 (Transact-SQL)

適用於:SQL ServerAzure SQL 資料庫Azure SQL 受控執行個體Azure Synapse AnalyticsAnalytics Platform System (PDW)Microsoft Fabric 中的 SQL 分析端點Microsoft Fabric 中的倉儲

當一個運算子結合不同資料類型的運算式時,低優先順序資料類型會先轉換為高優先順序資料類型。 如果轉換不是支援的隱含轉換,就會傳回錯誤。 若運算子結合的運算元運算式具有相同資料類型,則作業結果就含有該資料類型。

SQL Server 會使用下列資料類型優先順序:

  1. 使用者自訂資料類型 (最高)
  2. json
  3. sql_variant
  4. xml
  5. datetimeoffset
  6. datetime2
  7. datetime
  8. smalldatetime
  9. date
  10. time
  11. float
  12. real
  13. decimal
  14. money
  15. smallmoney
  16. bigint
  17. int
  18. smallint
  19. tinyint
  20. bit
  21. ntext
  22. text
  23. image
  24. timestamp
  25. uniqueidentifier
  26. nvarchar (包含 nvarchar(max))
  27. nchar
  28. varchar (包含 varchar(max))
  29. char
  30. varbinary (包含 varbinary(max))
  31. binary (最低)