エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
【Ruby on Rails】n+1 問題とは? - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
【Ruby on Rails】n+1 問題とは? - Qiita
これでもまだシンプルな方ではあります。実際には複数の条件を指定して、複数のテーブルと関連づいたデ... これでもまだシンプルな方ではあります。実際には複数の条件を指定して、複数のテーブルと関連づいたデータモデルを扱わなければなりません。そうなると、上記のようにシンプルなクエリ文では済まなくなってきます。 ActiveRecordはこんな感じでよしなにデータを取得してきてくれるのですが、何も考えずに使用していくと、これから解説するn+1問題が発生する可能性が大いにあるため、しっかり理解して使用する必要があります。 n+1問題とは 簡潔に言うならば、「余計なクエリが発行される」問題のことです。 余計なクエリが発行されるということは、アプリ自体のパフォーマンスが低下することになります。 もっと具体的に解説していきます。 会員テーブル(users)と投稿テーブル(posts)があったとして、これらは、1対多で関連づいています。 投稿一覧画面において、投稿に紐づくユーザーを取得する場合があるとします。