• 公開日:

スプレッドシートのQUERY関数where句で複数条件を指定する方法

こちらの記事では、スプレッドシートのQUERY関数where句で複数条件を指定する方法についてお伝えします。

where句を使うことにより、より詳細なデータ集計を行うことができるようになります。ぜひ参考にしてみてください。

スプレッドシートのQUERY関数where句で複数条件を指定する方法

QUERY関数にwhere句を合わせて使うことで、条件を付けたうえでデータを抽出できるようになります。

複数条件を指定するには、where句と共に「OR」「AND」を使った記述を行います。抽出したい条件に合わせて使い分けましょう。詳細は以下の通りです。

OR条件を使う

「OR」条件を記述した場合は、複数条件のうち、いずれかが当てはまれば、情報を抽出する、という指示になります。記述の仕方は以下の通りです。

※見出しはデータの上にある見出し行の数を入力しますが、省略も可能です。省略した場合は、データの内容に基づいて推測されます。

=QUERY(元データ,"select 抽出したい列 where 条件1 or 条件2",見出し)
表

こちらの表から、C列が「西店」であるか、D列が「北海道」であるデータを抽出します。具体的な手順は以下の通りです。

入力

結果を表示したいセルに、「=QUERY(A2:G18,"select * where C='西店' or D='北海道'")」と入力します。

※見出しを省略していますが、書略しない場合は、「=QUERY(A2:G18,"select * where C='西店' or D='北海道'",1)」と入力します。

抽出

C列が「西店」、もしくはD列が「北海道」のデータが表示されます。

以上が、QUERY関数のwhere句内で、OR条件を使う方法です。

AND条件を使う

「AND」条件を記述した場合は、複数条件のうち、全てが当てはまる情報を抽出する、という指示になります。記述の仕方は以下の通りです。

=QUERY(元データ,"select 抽出したい列 where 条件1 and 条件2")
表

こちらの表から、C列が「西店」かつ、D列が「北海道」のデータを抽出します。具体的な手順は以下の通りです。

and入力

結果を表示したいセルに、「=QUERY(A2:G18,"select * where C='西店' and D='北海道'")」と入力します。

and表示

C列が「西店」かつ、D列が「北海道」のデータが表示されます。

以上が、QUERY関数のwhere句内で、AND条件を使う方法です。

OR条件とAND条件を併用する

続いて紹介するのは、「OR」と「AND」を併用する方法です。こちらは記述の仕方を説明すると若干ややこしいので、例をお見せしながらご紹介します。

=QUERY(元データ,"select 抽出したい列 where (条件1 or 条件2) and 条件3")
表

こちらの表から、C列が「西店」か、D列が「北海道」であり、A列が「SAW」の商品を抽出します。手順は以下の通りです。

併用記述

結果を表示したいセルに、「=QUERY(A2:G18,"select * where (C='西店' or D='北海道') and A='SAW'")」と入力します。

OR条件とAND条件を一緒に利用する場合は、指定したい条件が複数存在する方を括弧で括ります。今回のケースの場合、OR条件が複数あり、AND条件はひとつなので、OR条件を括弧で括ります。

表示

C列が「西店」か、D列が「北海道」で、A列が「SAW」のデータが表示されます。

以上が、QUERY関数のwhere句内で、OR条件とAND条件を併用する方法です。

日付データを条件に指定する際の注意

日付データを条件に指定する際、参照するデータの表示形式が、テキスト形式になっていないと、結果がうまく表示されないケースもあります。

表示形式を変更する方法は、以下の通りです。

表示形式

表示形式を変更したいセルを選択し、②画面上部のメニューから「表示形式」をクリックして、③表示される一覧から「数字」をクリックします。

書式なしテキスト

表示される一覧から「書式なしテキスト」をクリックします。

変更完了

表示形式の変更が完了しました。以上が、スプレッドシートにおける、テキスト形式への表示形式の変更方法です。