
集計関数の列でwhere句[QUERY関数]
QUERY関数に於いて、sumなどの集計関数を用いた列でwhere句を用いようとしたところエラーが返ってきてしまいました。
調べたところ、ネストすることで回避できるとのことです。
備忘録として記事にまとめます。
以下のスプレッドシートを例とします。
列A-Eに売上データがあり、それをQUERY関数を用いて列G-Iにまとめます。
QUERY関数式はこちら。
=QUERY(A:E,"select B,sum(D),sum(E) where B is not null group by B")

これを基に、
「売上額合計が30,000円以上の商品のみ表示したい」
とします。
以下の式を書いたところ、エラーが返ってきました。
=QUERY(A:E,"select B,sum(D),sum(E) where B is not null and sum(E) > "&I1&" group by B")

以下のようにネストすると実現できました。
select句で「*(アスタリスク)」を用いすべてを表示させ、
where句での列指定はアルファベットではなく「Col」と数字を用います。
=QUERY(QUERY(A:E,"select B,sum(D),sum(E) where B is not null group by B"),"select * where Col3 > "&I1&"")
