【问题标题】:SQL Server CASE statement error: Incorrect syntax near '<'SQL Server CASE 语句错误:“<”附近的语法不正确
【发布时间】:2011-10-27 04:27:35
【问题描述】:
我正在尝试转换:
- 任何小于 0 到 -1 的数字。
- 任何大于或等于 0 到 1 的数字。
我的声明是:
SUM(CASE [Apr] WHEN ([Apr] < 0) THEN -1 WHEN ([Apr] >= 0) THEN 1 ELSE NULL END) as Apr
[Apr] 是一个接受 Null 的 int。
任何想法为什么这不起作用?
【问题讨论】:
标签:
sql
sql-server
syntax
case
【解决方案1】:
SUM(CASE WHEN ([Apr] < 0) THEN -1 WHEN ([Apr] >= 0) THEN 1 ELSE NULL END) as Apr
在Case
之后输掉[Apr]
【解决方案3】:
在WHEN 中进行比较时删除CASE 之后的[Apr]
SUM(CASE WHEN ([Apr] < 0) THEN -1 WHEN ([Apr] >= 0) THEN 1 ELSE NULL END) as Apr