スプレッドシートQuery関数を使ってみよう ①概要と目的

クエリイメージスプレッドシート
この記事は約4分で読めます。
スポンサーリンク
もしも_楽天

読んで欲しい人

  • SQLに興味があるが、一から環境やデータ整備するのがめんどくさい人
  • vlookupとかでデータ抽出しているが、限界を感じている人
  • データ分析したい人
  • ノンプログラマーでもクエリぐらいは使いたいって人
  • クエリって美味しいの?って人(クエリは美味しいですよって意味も込めて)

Query関数(クエリ関数):連載の概要と目的

個人的にはSQLって大好きで、MySQLをよく使っているのですが、MySQLって環境構築する際に色々エラー起こします(というか、自分が直近8系から5.7系に環境戻したんですが、再構築にグダグダ時間がかかってしまいました。。)。もちろん慣れている方はエラー起こさずにやれるのでしょうが。。そして、エラーが起きても今度はlinuxコマンドでアクセス権変えたり、ファイル所有者変えたり、新規のファイルをtouchさせたり。。。ちょっとノンプロがやるには辛い内容になりやすいです。

そこで、クエリ使ってみたいけど、SQL環境作るほどではないって人向けにスプレッドシートのクエリ関数がちょっとした練習や作業環境に適していたので、紹介していきます。

なお、実際のSQLで行うようなデータベース作成やテーブル作成みたいな物は、そもそもスプレッドシート自体がその役割を担うので、勉強できない点はご容赦ください。また、アクセス権関係やユーザ登録関係(mysqlだったら、mysql dbの部分など)も勉強できません。

ただし、普通のクエリ分書く練習にはなります。もちろん、複雑なクエリ文を書くのに適しているわけではないのですが、select/group/order_by/where/like/start with・・・いろんなクエリ文法がサポートされているあたりは、さすがGoogleさんです。

ざっとQuery関数 (クエリ関数)でできることをみてみよう

こんなデータがあったとします(これはgoogleさんのdocumentからまんま持ってきてます)

スプレッドシートデータ

これをいろんな条件で検索や集計をしていけます。

query実行結果

一つのシートに色々なデータの形を抽出・集計できます。別のスプレッドシートのデータも合わせて検討したい場合は、importrange関数でシートデータごと引っ張ってくれば、対応も可能です。

やれることがたくさんある、query関数をこれから数回に分けてクエリのお勉強の一環として、試していきます。

Query関数(クエリ関数)シリーズ予定 (あくまで予定)

  1. 概要と目的←今回
  2. クエリ関数の構成
  3. 基本の基本 SELECT句(全部取得、特定カラムだけ取得)
  4. 抽出の基本 WHERE句を使ってみる(数値一致、大小、日付一致、大小etc)
  5. GROUP BY句を使ってみる
  6. 他のシートからデータを持ってきてみよう〜 ImportRange関数との組み合わせ〜
  7. 並び替えの基本 ORDER BY句
  8. SQLやるなら必須 サブクエリをやってみる
  9. データに改行が入ってるぞ likeで対応できない時はcontains/starts withが助けてくれる

まとめ

SQLは実際はインサートやテーブル自体の構築をどうするかっていう点や、データ連携(djangoでいうOneToOneField/ForeignKeyみたいなやつ)とかは勉強できないですが、あくまでそこはノンプロ。DBは作る物ではなく、使うものと想定すれば、Query関数を使ったSQLの勉強は初めの一歩には非常に効果的かなと思います。

シリーズ頑張りきれるか分かりませんが、たまにはpython以外の人の役に立ちそうな記事も少しずつ頑張っていきます。

【レクチャー関係紹介】

ストアカ

ストアカにおいて、私も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との違いも含めて勉強していきます。

  1. スプレッドシートQuery関数を使ってみよう ①概要と目的
  2. スプレッドシートQuery関数を使ってみよう ②クエリ関数の構成
  3. スプレッドシートQuery関数を使ってみよう ③SELECT句
  4. スプレッドシートQuery関数を使ってみよう ④WHERET句
  5. スプレッドシートQuery関数を使ってみよう ⑤GROUP BYを使ってみる
  6. スプレッドシートQuery関数を使ってみよう ⑥他のシートからデータを持ってきてみよう〜 ImportRange関数との組み合わせ〜
  7. スプレッドシートQuery関数を使ってみよう ⑦並び替えの基本 ORDER BY句
  8. スプレッドシートQuery関数を使ってみよう ⑧SQLやるなら必須 Query関数でもサブクエリをやってみる
  9. スプレッドシートQuery関数を使ってみよう ⑨データに改行が入ってるぞ etc クエリ関数エラー対策
  10. スプレッドシートQuery関数番外編 〜Query関数のエラー原因ランキング〜
タイトルとURLをコピーしました