WEB开发网
开发学院数据库MSSQL Server 关于sql server case when ..else ..end结果类型的... 阅读

关于sql server case when ..else ..end结果类型的小议

 2009-10-16 00:00:00 来源:WEB开发网   
核心提示:这个问题源于csdn一贴子,后来发现sql server各版本对这个case when else end结果的处理不尽相同,关于sql server case when ..else ..end结果类型的小议,,CASE语法如下:/**//*CASEinput_expressionWHENwhen_expression

这个问题源于csdn一贴子,后来发现sql server各版本对这个case when else end结果的处理不尽相同。。

CASE语法如下:

/**//*
CASE input_expression
     WHEN when_expression THEN result_expression
    [ n ]
     [
    ELSE else_result_expression
     ]
END
Searched CASE function:
CASE
     WHEN Boolean_expression THEN result_expression
    [ n ]
     [
    ELSE else_result_expression
     ]
END
*/

联机文档有文:结果类型:从 result_expressions 和可选 else_result_expression 的类型集中返回优先级最高的类型。

有关详细信息,请参阅 数据类型优先级,如下

/**//*
 SQL Server uses the following precedence order for data types:
   1. user-defined data types (highest)
   2. sql_varian t
   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 (lowest)
*/

1 2  下一页

Tags:关于 sql server

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接