
QUERY関数でDBから抽出する(その3)[QUERY関数][Googleスプレッドシート]
※前回の記事はこちら
where句を用いると条件抽出が出来ます。
where句はセル参照も可能です。
独特な書式を用いるのでここでまとめます。
以下のデータベースを用います。

1_数字を参照する
1行目に列C「担当支社コード」を入力するセルを設け、そのセルを参照します。
=QUERY('DB02'!A:J,"select * where C = "&B1&"")
参照するセル(この場合はB1)をアンパサンド(&)とダブルクォーテーションで囲みます。

2_文字列を参照する
文字列を参照する場合はアンパサンドとダブルクォーテーションに加え、さらにシングルクォーテーションで囲みます。
=QUERY('DB02'!A:J,"select * where D = '"&B1&"'")

3_日付を参照する
日付を参照する場合は「date」というワードを加え、TEXT関数でフォーマットをyyyy-MM-DDに変更します。
「date」以下は文字列同様「アンパサンド」「ダブルクォーテーション」「シングルクォーテーション」で囲みます。
=QUERY('DB02'!A:J,"select * where I = date '"&TEXT(B1,"yyyy-MM-dd")&"'")

【補足】抽出条件セルにプルダウンを用いる
where句でセル参照をする場合、「データの入力規則」機能を用いてプルダウンにするとより便利になります。

プルダウンリストは別シートを用意し、UNIQUE関数を用いるとリストが増えた場合でもメンテ不要で運用が便利になります。


この場合のUNIQUE関数は、シート[DB02]_列D(担当支社名)にある一意の値を返すので、支社名が今後増えたとしてもメンテ不要で運用できます。
※2022年9月に技術同人誌「会社員がVLOOKUPの次に覚えるQUERY関数超入門」を出版いたしました。