ลำดับความสำคัญของชนิดของข้อมูล SQL

เมื่อต้องมีการเปรียบเทียบข้อมูลที่ต่างชนิดกัน SQL จะทำการแปลงชนิดของข้อมูล เป็นข้อมูลชนิดที่มีลำดับความสำคัญที่สูงกว่าก่อนการเปรียบเทียบ และหากไม่สามารถแปลงได้จะคืนค่าข้อผิดพลาดกลับมา และผลลัพท์จะเป็นไปตามชนิดของข้อมูลที่มีลำดับความสำคัญที่สูงกว่า
  1. user-defined data types (ลำดับความสำคัญสูงที่สุด)
  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 (including nvarchar(max) )
  26. nchar
  27. varchar (including varchar(max) )
  28. char
  29. varbinary (including varbinary(max) )
  30. binary (ลำดับความสำคัญต่ำที่สุด)
ยกตัวอย่าง ข้อมูลชนิด float*int ข้อมูลชนิด int จะถูกแปลงเป็น float ก่อนถึงจะนำไปคำนวณ และส่งผลลัพท์เป็น float กลับมา

ข้อมูลจาก https://msdn.microsoft.com/...ibrary/ms190309.aspx
ผู้เขียน goragod โพสต์เมื่อ 22 ก.พ. 2559 เปิดดู 4,012 ป้ายกำกับ SQL
^