![見出し画像](https://assets.st-note.com/production/uploads/images/84140726/rectangle_large_type_2_ab32c305150bde1da8b468a7ee85c9fd.jpeg?width=1200)
QUERY関数でDBから抽出する[QUERY関数][Googleスプレッドシート]
スプレッドシートのデータベースから欲しい情報のみを抽出したい場合、QUERY関数を用いると便利な時があります。
下記の「受注案件リスト」を例に用います。
![](https://assets.st-note.com/img/1653895478302-qaSL8MZxO2.png?width=1200)
別のシート「DB_東京本社」に、QUERY関数を用いて東京本社のみのデータを反映させます。
セルA1に以下のQUERY関数を入力します。
=QUERY('DB01'!A:H,"select A,B,C,D,E,F,G,H where C = 101")
結果、別シートに東京本社のみのデータが反映されました。
![](https://assets.st-note.com/img/1653897873501-rUF0vo0B2k.png?width=1200)
上記のQUERY関数を解説します。
![](https://assets.st-note.com/img/1653899860748-OEMTaLWRAa.png?width=1200)
■第一引数:データ
データの範囲を指定します。
別シートのシート名はシングルクォーテーションで囲います。
■第二引数:クエリ
ダブルクォーテーションで囲います。
クエリ言語にある様々な「句(Clause)」を用いクエリを実行します。
select句で表示したい列とその表示順を指定します。
where句で列C(担当支社コード)が「101」である行のみ抽出しています。
※参考<1>
select句で「select *」とアスタリスクを用いると、データ範囲と同じ表示列/表示順を返すことが出来ます。
=QUERY('DB01'!A:H,"select * where C = 101")
※参考<2>
where句の抽出条件が文字列の場合はシングルクォーテーションで囲みます。
=QUERY('DB01'!A:H,"select * where D = '東京支社'")
※続きの記事を書きました。
※2022年9月に技術同人誌「会社員がVLOOKUPの次に覚えるQUERY関数超入門」を出版いたしました。
この記事が気に入ったらサポートをしてみませんか?