【メモ】Google SpreadsheetでSQLが書ける?Query関数が便利な件。
※この記事は、SQLを書いたことある方向けとなっています。
【追記・注意!】最近、関数が動かなくなったと思ったら、クエリ部分(SELECTから始まる部分)を "" で囲って上げないと行けなかったので、もしできなかったら "" をつけてあげて見てください。
Google Spreadsheetで分析や集計処理をする際に、一時的に処理すればいいものであれば、コピペ&Sortや色々頑張って使えばいいのですが、
色々なフィルターの設定をしたり色々めんどくさいですよね。。
QUERY関数とは、Google SpreadsheetでSQLのような処理ができる関数です。(※正確には、Google Visualization API のクエリ言語を使います。)
QUERY関数とは?
QUERY関数とは、Google Spreadsheetで"ほぼ"SQLでの処理ができる関数です。
具体的にどう書くのか?
具体的にどんなことができるかというと、以下のような関数を書くことができます。
=query(A1:K500 ,select * where B is not null order by A asc)
!!! select 〇〇 from △△になっていないぞ!と思うかもしれませんが、QUERY関数では、最初にデータ範囲(A1:K500)を指定しています!
これだけ書けば、SQLを学んだ事がある人ならどんな事ができるかはイメージができるかと思いますので、ここらへん読んで頂ければと思います。
SQLとの違う部分について
色々わかったし、JOINしまくって分析するか!と思った方もいると思いますが、2シートにわたる データをつなげる場合には、こんな感じの関数を書けば一応繋げられます。
=query({'データA'!A1:K500;'データB'!A1:K500}
,select * where B is not null order by A asc)
ちなみに、「;」だと縦、「,」だと横にデータが繋がります。
しかし、Inner joinやLeft joinなどをがっつり使いたい場合には、QUERY関数ではできないようなので、Visualization APIなどを使ってJOINするといいのではないでしょうか。(コード書かないといけないかもしれませんが、、)
スプレッドシートの集計がだるいと思っている方は活用してみて下さい。
Googleスプレッドシート関連の相談をはじめました!
月150円でお得情報やFinTech、そのほか最新技術情報などを共有中です!!
ぜひ、入ってみて下さい!!
この記事が気に入ったらサポートをしてみませんか?