2016-05-27 5 views
2

Это может показаться глупый вопрос, но я всегда делал мои CASE функции в следующем формате:Различные форматы функции СЛУЧАЙ SQL Server

CASE 
    WHEN .... THEN .... 
    ELSE .... 
END AS Example 

Но недавно я наткнулся на один в этом формате:

Example = CASE 
      WHEN ... THEN ... 
      ELSE ... 
      END 

Это просто предпочтение пользователя или есть причина, по которой можно использовать любой формат?

+2

Это просто еще один способ, которым вы можете позвонить в свою колонку ... Выберите [columnName] = 15 * 5 – Dejan

ответ

3

Пока вы ориентируетесь только на SQL Server, все в порядке. Я предпочитаю первую версию, но это только я. Это больше нюансирует, если вы нацеливаете на несколько СУРБД. Это не имеет никакого отношения к заявлению case. У вас будет то же самое, если это было Foo = 42 vs 42 as Foo vs 42 as [Foo] - и, возможно, несколько других вариантов. На самом деле это часть синтаксиса SELECT для обозначения столбца вывода.

+0

Спасибо Marc! Имеет смысл. Да, я всегда делал это так же, как вы рекомендуете. Не думал о вариантах, в которых поле вывода «Именовано =». Я всегда использовал псевдоним. ура –