【发布时间】:2012-11-16 04:19:45
【问题描述】:
我想对同一列中的值求和,但取决于不同列中的某些条件,即
value column1 column2 column3
11 a x m
45 b y n
50 b z p
12 c x p
例如我想要“价值”的总和 column1 = b & column2 = z & column n
我使用了以下语法:
sum(case when column1 = b & column2 = z & column n then value end) total
这行得通,但我要处理很多列,所以有没有更简单的方法来做到这一点。 我在考虑循环,但无法理解 SQL 中的循环。
【问题讨论】:
-
你在那里所做的工作;或者,如果您只在一个结果之后,您可以将您的条件移动到 where 语句。除非有一些他们遵守的基本规则,否则没有简单的方法可以添加许多不同的条件而不显式添加条件。
标签: mysql sql sql-server sql-server-2008 tsql