2

同じ列の値を合計したいのですが、異なる列の特定の基準に応じて、つまり

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 でループを理解できません。

4

1 に答える 1

1
SELECT SUM(value) FROM table GROUP BY col1, col2, col3

特定のセットに必要な場合は、使用できます

SELECT SUM(value) FROM table GROUP BY col1, col2, col3 HAVING col1='a' AND col2='n' AND col3='c'
于 2012-11-28T10:34:00.090 に答える