なぜ、SQLは重たくなるのか?──『SQLパフォーマンス詳解』の翻訳者が教える原因と対策
『SQLパフォーマンス詳解』の翻訳者の松浦隼人さんに、8つの「SQLが重たくなる原因とその対策」を聞きました。システムのボトルネックになるような「問題のあるSQL」を回避するノウハウを学びましょう。
データの操作や定義をする言語「SQL」は、どのような領域を担うエンジニアにとっても必修科目です。しかし、その仕様をきちんと理解し、パフォーマンスに優れたSQLを書ける方はそれほど多くありません。問題のあるSQLを書いてしまい、知らぬ間にそれがシステムのボトルネックになってしまう事態はよく発生します。
では、どうすればそうした事態を回避できるのでしょうか? そのノウハウを学ぶため、今回は『SQLパフォーマンス詳解』の翻訳者であり、自身もエンジニアでもある松浦隼人(まつうら・はやと/@dblmkt)さんに8つの「SQLが重たくなる原因とその対策」について聞きました。実地で技術を磨き上げたスペシャリストが語る珠玉のメソッド、全エンジニアにとって必見の内容です。
- 【原因(1)】ORMが生成するSQLを確認していない
- 【原因(2)】複合インデックスを適切に使えていない
- 【原因(3)】複合インデックスの走査範囲を考慮していないため、大なり小なり記号やBETWEENが遅い
- 【原因(4)】LIKE句において、ワイルドカードが文字列の前方についている
- 【原因(5)】テーブル結合が不得意なデータベースで、テーブル結合を多用している
- 【原因(6)】ORDER BY / GROUP BYで、大量のソートが発生している
- 【原因(7)】データ量が増えると処理が重たい。「良くないSQL」を書いているから
- 【原因(8)】複数クエリの総実行時間が長い
- 大切なのは、データベースの仕組みを理解すること
【原因(1)】ORMが生成するSQLを確認していない
エンジニアHubに会員登録すると
続きをお読みいただけます(無料)。
続きをお読みいただけます(無料)。
登録ボタンを押すと、利用規約とプライバシーポリシーに同意したことになります。

- すべての過去記事を読める
- 過去のウェビナー動画を
視聴できる - 企業やエージェントから
スカウトが届く