Benito Serna Tips and tools for Ruby on Rails developers

Tool to run the examples for the 5 ways to fetch the latest-n-of-each record

July 22, 2021

A common cause of n+1 queries is fetching the “latest-N-of-each” record on a list of records.

Some examples of this problem are trying to get…

I have one post named 5 ways to fetch the latest-N-of-each record on Rails where I share different ways to solve this problem. Here I want to share with you the code that I used in the post.

You can use it to run the examples, and play with the code and seed values, to pick the right solution for you current case.

How to run the examples

1 - Install the dependencies with bundle install.

2 - Database setup - run the command:

ruby db/setup.rb

3 - Run the examples with ruby fixes_examples/<file name>. For example:

ruby fixes_examples/01_fetch_all_and_select_for_each.rb

4 - Change the posts and comments count on db/seeds.rb you can change Seeds.run(posts_count: 10, comments_count: 10) and re-run ruby db/setup.rb to test different scenarios.

Get the code to run the examples

Subscribe, and get the code to run each of the examples in the post. You will receive a zip with the code.

Related articles

No more… “Why active record is ignoring my includes?”

Get for free the first part of the ebook Fix n+1 queries on Rails that will help you:

  • Explain what is an n+1 queries problem
  • Identify when ActiveRecord will execute a query
  • Solve the latest comment example
  • Detect n+1 queries by watching the logs
  • Learn the tools to detect n+1 queries
Get the first part of the ebook for free