このサイトはアドセンスやアフィリエイト広告を利用しています

SQL

40代事務職Access触りたくないのでSQLを勉強してみたら感動した

自分の自己紹介的な記事

40代事務職、会社で上司がAccess使ってるので、それを修正するためにAccess勉強しようかな・・・って本を買って半年

1ページも勉強してません。そろそろやろうかな・・・って思って、ちょっと調べた

AccessはマクロとVBAの知識が必要

いまさらVBAなんて勉強したくねぇ~~~!!

友達にちょっと相談してみる

Accessって同時に編集するとぶっ壊れるからおすすめできない

たしかにしょっちゅうぶっ壊れるからイライラしています
自分が使いやすいようにACCESSを勉強しようと思ったのですが!

  • おすすめできない
  • すぐぶっこわれる
  • VBAの知識が必要

Python勉強してるのはVBAとかやりたくないからだし、いまさらVBAやるならAccessなんてやりたくない

そこで気がつく

Accessってデータベースじゃん!SQLができればいいんでしょ

っというわけでしっかり学習することにしました

SQLでビッグデータを集計できるらしいので楽しそう

集中演習 SQL入門 Google BigQueryではじめるビジネスデータ分析 (できるDigital Camp)
https://amzn.to/3Pv19w9

この本のターゲットは企画とか営業とかビッグデータを分析したい人

だから、売上の集計とかアクセス解析の方法、最近話題のGoogle アナリティクスのG4のデータの集計の仕方も乗ってる

初心者がイチからデータベースを作ってもどうせ中身空っぽ

SQLでデータベースにデータを登録削除するなんて最初はいらないじゃん!ということに気がつく

SELECT 文と言われるSQLのデータを取り出す部分だけがっつり学習すればいいのです

データの登録したいならCSVファイルをアップロードしちゃえばいいじゃない!っという力技ある

データはどうやって使うかがいちばん大事なので分析集計ができると楽しい

使うツールはGoole could platform の Big query
基本無料 大量で使うとなるとお金がかかるがSQLの学習ぐらいなら全然余裕で無料です

SQLでできる!売上集計やサイト訪問ごとのユーザー経路など

  • ユーザーごとの売上集計
  • 商品ごとの売上や販売個数、平均単価
  • 月ごとや、四半期、年ごとのデータ集計

Excelの場合コピペしたり色々関数入れて集計したり、ピボット使ってとかめんどくさい

でもSQLなら数行のSQL文で集計できる

最初は大変だけど結構慣れると楽しい

データが増えても、同じSQL文で集計できるのでメンテナンスしなくていい

かなり時短できるんじゃないかな

会社のIT部門にお願いして、SQLで集計したいっていって対応してもらえる事が前提にあるけれど。

生データを知ることで、どんな分析ができるかひらめくこともあります

具体的に覚えたSQL知識

  • SELECT
  • WHERE
  • HAVING
  • CASE WHEN THEN
  • IF
  • UNION JOIN
  • サブクエリ 副問合せとか言うらしい
  • WITH句 仮想テーブル
  • 集計関数 SUM AVGとかよくあるやつ
  • wwindow関数

とかいろいろ勉強した

Window関数はなかなか理解が難しくて、1ページ進むのに1日かかったりしました

でも、この辺ができると、ランディングページや、離脱ページをユーザーごとに調べたりできたり、株価の移動平均とかを集計分析できたりするので便利

演習問題も200問ぐらいあったりサンプルデータも充実している

  • 売上データ
  • 顧客データ
  • アクセスログ

じっさいに仕事の集計で使うようなデータなので演習問題までゴリゴリやればSQL完全に理解したまでにはなると思います

SQLを学習した私は気がつく!DB構築なんてさせてもえない

  • Access使いたくない
  • かわりのデータベース必要
  • IT部門からデータベース構築の許可なんて出るわけない

なにこれ詰んだ

結局Accessを使わないといけないの?

ACCESSみたいに、.accdb みたいなファイル形式で使えるDBないの!?

絶望しながら悩む・・・
CSVファイルに保存してPythonでSQLを操るツールがあるっぽい
→いやそれはなんか違う

Pythonで操作できるDB・・・・・はっ!!

SQLitってあったな、かんたんなDBっていわれてたな・・・

そういえばあれ、拡張子.dbだわ!

Mysqlと違って、インストールみたいなのなかった

やったぜ

GUIで操作できるツールないかな・・・・

あった!

SQLliteならアプリでもPythonでも操作できるしどこでも保存可能

DB Browser for SQLite
https://forest.watch.impress.co.jp/library/software/sqldbbrowser/

これなら、何処にでも保存できて、Pythonで操作できる
SQLiteはpythonに標準搭載されてモジュールもあるしいいじゃない

データベースの作成知識は

スッキリわかるSQL入門 第3版 ドリル256問付き! (スッキリわかる入門シリーズ)
https://amzn.to/3K346De

これで身につけました

1回学習したけれど、使う機会無くて触るの怖い・・・だったけど
最初に紹介した本でSQLの分析しまくってたら気がついたら抵抗感がなくなってました

むしろデータベースのテーブル形式でデータを取り扱いたい!って思えるようになりました

データを使うことに慣れると、逆にどうやってデータを管理すればいいのかわかる

色々細かいルールとか学ばなきゃいけないことは多いんだろうけどそこは少しずつ見に付けていけばいいかと思っている

そんなわけで、気がついたらpythonでSQLiteに追加削除できるようになってました

上司には黙ってSQLiteを使う予定

スキルを身に着けても別に給料に反映されないし、余分な仕事が増えるのが嫌なのでバレないようにこっそりSQLiteでDB化しつつ、pythonで自動化を進める

上司のAccessは触りたくないし、こっそり自分の作業を効率化

-SQL
-,