在sql server 2008中,别名与列名相同,因此收到错误列已多次指定。
我无法更改应用程序中断的别名
答案 0 :(得分:2)
您已发布两列别名。
a.published,
和
CASE a.type
WHEN N'component' THEN a.published+2*(e.enabled-1)
WHEN N'url' THEN a.published+2
WHEN N'alias' THEN a.published+4
WHEN N'separator' THEN a.published+6 END AS published,
答案 1 :(得分:1)
您不能返回具有相同别名的两列。每列必须具有唯一的名称。
如果您需要返回 BOTH a.published以及CASE
逻辑的结果,则需要为其中一个提供不同的名称。
调用应用程序将要求“已发布”列,您希望将它们作为“已发布”给出什么?至于另一件事,他们必须知道以不同的名字要求它。