読んで欲しい人
- SQLに興味があるが、一から環境やデータ整備するのがめんどくさい人
- vlookupとかでデータ抽出しているが、限界を感じている人
- データ分析したい人
- ノンプログラマーでもクエリぐらいは使いたいって人
- クエリって美味しいの?って人(クエリは美味しいですよって意味も込めて)
Query関数(クエリ関数)シリーズ予定 (あくまで予定)
- 概要と目的
- クエリ関数の構成
- 基本の基本 SELECT句(全部取得、特定カラムだけ取得)←今回
- 抽出の基本 WHERE句を使ってみる(数値一致、大小、日付一致、大小etc)
- GROUP BY句を使ってみる
- 他のシートからデータを持ってきてみよう〜 ImportRange関数との組み合わせ〜
- 並び替えの基本 ORDER BY句
- SQLやるなら必須 サブクエリをやってみる
- データに改行が入ってるぞ likeで対応できない時はcontains/starts withが助けてくれる
Query関数:SELECT句の基本
今後利用していく、元データをURLで公開していきます。このデータは、Google Visualization APIでサンプル公開されているものと同一です。(https://developers.google.com/chart/interactive/docs/querylanguage#Select)
SELECT句ができること
SELECT句は実際のSQLでも基本的に最も使われる機能で、というか、データを抽出したりすることがSQL(クエリ)の基本目的である以上、選択する機能を持つSELECTはほぼほぼ毎回使われます。
これは、スプレッドシートのquery関数でも同様です。
特定の1列だけ取得する
A列だけを取得する場合
=QUERY(データ範囲,"SELECT A")
SELECTの後にColumnを指定すれば、そのカラムの行データだけ取得可能です。
複数列取得する
A,B,D列を取得する場合
=QUERY(データ範囲,"SELECT A, B, D")
SELECTの後にカンマ区切りで指定すると、指定した順序で表示されます。

SELECTの後にいれるカラムの順番を変えれば、表示されるデータの順番も変えられる。
=QUERY(データ範囲,"SELECT D, A, B")

ちなみに、以下のように複数同じ列を指定するとエラーとなる
=QUERY(データ範囲,"SELECT D, A, B, D") #エラーになる
全て取得する
=QUERY(データ範囲,"SELECT *")
*はselect文では全てを意味しており、上記のように作ると全データが取得できる
あまり活用することはないかと思うが、一応クエリを設定しない場合も全て取得できる。
=QUERY(データ範囲,)
まとめ
クエリの最も基本となるSELECTをみていきました。
データを抽出する元となる、対象データ内でどのカラムデータを利用するかを最初に決めていくのが抽出の場合の基本になります。
SELECT文は難しくないと思いますし、データを選択するための基本なので、ぜひ慣れてみてください。
【レクチャー関係紹介】
ストアカ
ストアカにおいて、私も1.5H程度で簡単にGASやQuery関数のとっかかりを解説する講座を実施しています。1Hくらいの講座と、30分くらいの相談時間(自由時間)を設けて、これからGASやQueryを始める人向けに実際のドキュメントや簡単なスプレッドシートでのGAS・Queryの使い方などを解説させていただきます。
個人的には普及活動の一環だと思って、他の業務のお客さんには申し訳ないものの、それなりにお求めやすく設定しています。必要に応じて別途継続サポートさせていただくことも可能です。
私の講座以外にもストアカには同じような金額帯でQuery講座が複数準備されていました。受講したことがないので、評価は出来ない立場にありますが、相性の良さそうな先生を探すのも手かもしれません。
MENTA
メンターを探すサイトも存在します。あまりGASやQuery関数を教えますってメンターはそこまで多くはないのが実情です。ノンプロエンジニア向けではなく、エンジニア向けor エンジニア志望者向けなので、Query関数はあまり対象にならないかもしれません。他方で純粋SQLを教えてほしいというリクエストであれば、多くのメンターが集まると思います。
ちなみに、私のレクチャーページも紹介しておきます。
【Query関数】 相談PLAN連載目次: spreadsheet_query関数を使いこなそう
SQL勉強もかねて、spreadsheetのquery関数の使い方に慣れていきます。簡単なselect文の使い方から、SQLとの違いも含めて勉強していきます。
- スプレッドシートQuery関数を使ってみよう ①概要と目的
- スプレッドシートQuery関数を使ってみよう ②クエリ関数の構成
- スプレッドシートQuery関数を使ってみよう ③SELECT句
- スプレッドシートQuery関数を使ってみよう ④WHERET句
- スプレッドシートQuery関数を使ってみよう ⑤GROUP BYを使ってみる
- スプレッドシートQuery関数を使ってみよう ⑥他のシートからデータを持ってきてみよう〜 ImportRange関数との組み合わせ〜
- スプレッドシートQuery関数を使ってみよう ⑦並び替えの基本 ORDER BY句
- スプレッドシートQuery関数を使ってみよう ⑧SQLやるなら必須 Query関数でもサブクエリをやってみる
- スプレッドシートQuery関数を使ってみよう ⑨データに改行が入ってるぞ etc クエリ関数エラー対策
- スプレッドシートQuery関数番外編 〜Query関数のエラー原因ランキング〜