背景
今年は、2014年4月に入社した方々への研修を担当しました。
既にWebアプリケーションの開発経験がある人も居ましたが、MySQLを全く知らなくても大丈夫な内容にしようと考えました。
「SQLの基本」は、改訂新版 反復学習ソフト付き SQL書き方ドリルを参考にして資料を作成しました。
この本はRDBMS全般を扱っており、MySQL以外のDBについての記述もあったため、資料作成時にMySQL用に編集したり、当日説明する際に補足することでカバーしました。
※ 資料は、一応Confidentialなもので、公開許可を受けていないため、今のところ非公開です
全体を通して、SQLの解説の後、実際にMySQLを触ってもらう事を繰り返して、資料を進めて行きました。
全部で半日くらいです。
SQLの基本
- SELECT
- データを取り出す
- 列の演算
- 集合関数
- 絞り込み
- WHERE
- ORDER BY
- HAVING
- サブクエリ
- JOIN
- INSERT
- UPDATE
- DELETE
MySQLの操作
MySQL Reference Manualsを参考にしつつ、日々仕事で運用していて必要だと思った内容を詰め込みました。
- データ定義
- CREATE/DROP DATABASE
- CREATE/DROP TABLE
- CTEATE INDEX
- 権限
- GRANT
- REVOKE
- SHOW
- SHOW GRANTS
- SHOW PROCESSLIST
- SHOW VARIABLES
- FLUSH
- ALTER TABLE
- レプリケーション
- SHOW MASTER STATUS
- SHOW SLAVE STATUS
- CHANGE MASTER TO
やりたかったけどやれなかったこと
チューニング
重いテーブルをEXPLAIN使って原因を見つつ、クエリ改善をさせたかったのですが、準備時間が取れず、漢のコンピュータ道の紹介で終わりました。
テーブル設計
INDEXが効くように、とか、Immutable Data Modelingのあたりを入れたかったのですが、チューニングと同様にできませんでした。
まとめ
2015年の新人研修の参考にして頂ければ幸いです。