My model is below, when I call this two sql queries, one counter + original is executed
class Claim < ActiveRecord::Base class << self def find_alternatives() Drug.where("gpi like '3760%'").select('gpi, drugs.prod_desc_abbrev').group(:gpi) end end end
In my console, I find two queries executing
SELECT COUNT(*) AS count_all, gpi AS gpi FROM `drugs` WHERE (gpi like '3760%') GROUP BY gpi SELECT gpi, drugs.prod_desc_abbrev FROM `drugs` WHERE (gpi like '3760%') GROUP BY gpi
My controller
def drug_alternatives @alternative_drugs = Drug.find_alternatives(params[:gpi]) end
My views
<% @alternative_drugs.each_with_index do |result, count| %> <%= result.gpi %> <%= result.prod_desc_abbrev %> <% end %>
How can this be fixed. Why are two queries performed?
source share