Quickie о «случае» SQL Server 2005 - PullRequest
       12

Quickie о «случае» SQL Server 2005

0 голосов
/ 07 октября 2011

Работает ли оператор case как "if - else if" или как "if - if"?

Допустим, я пишу

...ORDER BY CASE WHEN agentid=@agentid THEN 4 WHEN status='GOLD' THEN 3 WHEN status='SILVER' THEN 2 WHEN status='BASIC' THEN 1 END DESC

Будет ли запись, в которой находится agenttid@agentid и статус GOLD будет 7 или 4 ?

1 Ответ

1 голос
/ 07 октября 2011

Эффективно в другом случае;Оператор CASE вернет 1-е совпадающее значение, поэтому, когда agentid=@agentid удовлетворено, оценки останавливаются без проверки других WHEN условий, и будут возвращены 4.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...