这似乎是一个愚蠢的问题,但我总是按照以下格式完成我的CASE
函数:
CASE
WHEN .... THEN ....
ELSE ....
END AS Example
但是最近我遇到了这种格式的一个:
Example = CASE
WHEN ... THEN ...
ELSE ...
END
这只是用户偏好还是有理由使用任何一种格式?
只要你只针对SQL Server,两者都很好。我更喜欢第一个版本,但这只是我。如果你的目标是多个RDBMS,它会更加微妙。这与case
声明无关。如果是 Foo = 42
vs 42 as Foo
vs 42 as [Foo]
,你会有同样的 - 可能还有其他一些变体。这实际上是SELECT
语法的一部分,用于命名输出列。