めもめも
- 基本的に最小のデータを選べ。
- ex. tinyintで済むならtinyint
- enum型は内部的には整数で扱う。
- ex. ("one", "two", "three")は1,2,3
- BLOBとTEXT型はmax_sort_lengthでsortする。文字列全体でsortするのではなくmax_sort_lengthで行う。
- ex. どういうことか理解してないので実験する。
- 日付のデータ型でテーブルに保存するときはTimestampを使う。
- 正規化・非正規化のトレードオフ
- ALTER TABLEするときは基本的に新しいスキーマの空テーブルを作り、既存のレコードを新しい空テーブルにInsertして、Indexの再構築を行う。※データサイズ次第ではめっちゃ時間がかかる
- ただし、空テーブルを作らずに済むパターンもある
- .ex(enumとsetの定数の追加、AUTO_INCREMENTの削除)
まとめ
- 極力小さいサイズのデータ型を選択する
- 遅いクエリ・構造を避ける
- IDは整数を使う