n+1問題
プログラミング初学者からしたら
なんとなく理解できそうで聞かれると説明できない問題シリーズの代表格気もします・・・
そもそも何がそんな問題なのか・・・😅
説明にはあまりイメージ
「SQLの大量発行が大量に発行される」
的なことが書いてあるのですがあまりイメージがつきませんでした・・・
そこで少し解釈の幅を広げてみようと思います!!
例えばスーパーに買物に行ったとします。
購入予定であったコーラを買って帰りました
そしたら・・・
👩「買い物行くなら、アイスクリームも買ってきてほしかった!!」
👨「え・・・?? 今帰ってきたとこやのに!! もう少し早く言ってや!!」
👩「ごめん!! けど、食べたいから・・・お願い!!」
👨「・・・・・行くけど・・・・・めんどい・・・・」
ってなります。
こうなるとなかなかコーラを飲めません
そこで、最初から買い物リストがあって一回スーパーに行った時にまとめて購入できたら、帰宅して2人ともスグにコーラにもアイスクリームを楽しめます!!
この買い物リストに当たるものが・・・・
includesメソッド!!
そして行き先のスーパーはincludesの.の前にあるモデル名です!!
記述したらこんな感じ
スーパー.includes(コーラ,アイスクリーム)
😨確かに1000個の投稿とかある場合は1000回家とスーパーの往復してたら一瞬で一日が終わってしまう・・・
個人的なの「n+1」の解釈はこんな感じでした!!
明日のメンターさんに確認してみよう!!😚
この記事が気に入ったらサポートをしてみませんか?