「Rails Developers Meetup 2018 で「MySQL/InnoDB の裏側」を発表しました」でちゃんと触れられてないので今更ながら key_len について補足します。発表で触れた内容については言及しないので、storage engine や B+ tree といった用語がよくわからない方は発表内容を参照してください。 なお、MySQL のバージョンは 5.7.38 です。 mysql> SELECT @@version; +-----------+ | @@version | +-----------+ | 5.7.38 | +-----------+ 1 row in set (0.00 sec) 事前準備 sample-data-railsdm-2018 の orders テーブルを少しいじって、キャンセル時刻(canceled_at)、配送予定時刻(deliv
![MySQL で複合インデックスを作成する際には必ず Explain の key_len を確認すべきという話](https://cdn-ak-scissors.b.st-hatena.com/image/square/e4ae451b6eb68f86e6395ff31c162da99986ea8f/height=288;version=1;width=512/https%3A%2F%2Fabicky.net%2Fassets%2Flogo-ecc7933ebcc8ad52763d7bdcc07df22f9534054dd930e28b01860043de7ca6ce70b47c3b5c250c3a275c3d6f107fad47a0b67347b1e199de9a2f603fa32d95aa.png)