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

クエリイメージ スプレッドシート
この記事は約3分で読めます。
Advertisements

読んで欲しい人

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

連載の概要と目的

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

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

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

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

ざっとできることをみてみよう

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

スプレッドシートデータ

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

query実行結果

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

やれることがたくさんある、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以外の人の役に立ちそうな記事も少しずつ頑張っていきます

連載目次: 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 クエリ関数エラー対策

コメント