Rangfolge der Datentypen (Transact-SQL)

Wenn durch einen Operator zwei Ausdrücke verschiedener Datentypen kombiniert werden, geben die Rangfolgeregeln für Datentypen an, dass der Datentyp mit der niedrigeren Rangfolge in den Datentyp mit der höheren Rangfolge konvertiert wird. Wenn es sich bei der Konvertierung nicht um eine unterstützte implizite Konvertierung handelt, gibt das System einen Fehler zurück. Wenn beide Operandenausdrücke vom gleichen Datentyp sind, hat das Ergebnis der Operation diesen Datentyp.

SQL Server verwendet die folgende Rangfolge für Datentypen:

  1. benutzerdefinierte Datentypen (höchster)

  2. sql_variant

  3. xml

  4. datetimeoffset

  5. datetime2

  6. datetime

  7. smalldatetime

  8. date

  9. time

  10. float

  11. real

  12. decimal

  13. money

  14. smallmoney

  15. bigint

  16. int

  17. smallint

  18. tinyint

  19. bit

  20. ntext

  21. text

  22. image

  23. timestamp

  24. uniqueidentifier

  25. nvarchar (einschließlich nvarchar(max) )

  26. nchar

  27. varchar (einschließlich varchar(max) )

  28. char

  29. varbinary (einschließlich varbinary(max) )

  30. binary (niedrigster)