我正在使用 SQL Server 2008 并且有一个非常大的 CASE 语句,该语句也用于 GROUP By 子句。我想将 CASE 语句设置为变量,以最大限度地减少代码维护并最大限度地重用。问题是我收到此错误:
Each GROUP BY expression must contain at least one column that is not an outer reference.
此 CASED 列不是 GROUP By 子句中引用的唯一列,因此我不确定为什么会出现此错误。
我已经搜索了该站点,但没有发现像我的问题(令人惊讶)。那么,我该如何解决这个问题?
更新:我已经包含了 DB 类型。至于添加我所拥有的代码,我不确定它会添加任何内容,因为它超过 200 行。这根本不是一个复杂的陈述。它只需要各种国家代码并将它们映射到它们的完整国家名称。例如,美国有 50 多个代码,所以我使用 CASE 语句来合并它们。这使我可以按国家/地区对我的信息进行分组。