Ошибка оператора SQL Server CASE: неверный синтаксис рядом с '<' - PullRequest
3 голосов
/ 15 августа 2011

Я пытаюсь преобразовать:

  • любое число меньше 0 в -1.
  • любое число больше или равно 0 в 1.

Мое утверждение таково:

SUM(CASE [Apr] WHEN ([Apr] < 0) THEN -1 WHEN ([Apr] >= 0) THEN 1 ELSE NULL END) as Apr

[Apr] - это int, принимающий значения Null.

Есть идеи, почему это не работает?

Ответы [ 3 ]

8 голосов
/ 15 августа 2011

Удалить [Apr] после CASE при выполнении сравнений в WHEN

SUM(CASE WHEN ([Apr] < 0) THEN -1 WHEN ([Apr] >= 0) THEN 1 ELSE NULL END) as Apr
1 голос
/ 15 августа 2011
SUM(CASE WHEN ([Apr] < 0) THEN -1 WHEN ([Apr] >= 0) THEN 1 ELSE NULL END) as Apr

Потерять [Апр] после Дело

1 голос
/ 15 августа 2011

Получите поездку [Апр] после СЛУЧАЯ.

...