Home > other >  Ruby on Rails - Limit Database Query to One Result only
Ruby on Rails - Limit Database Query to One Result only

Time:03-26

I want to query the database but only find out if there is at least one result or not. I am trying to minimize the cost for this transaction. What would the structure be in Rails to have the query be SELECT TOP or SELECT FIRST in SQL?

CodePudding user response:

You could try exists?

Person.exists?(5) # by primary key
Person.exists?(name: 'David')
Person.exists? # is there at least one row in the table?
Person.where(name: 'Spartacus', rating: 4).exists?
Person.active.exists? # if you have an "active" scope

Note that this limits the result set to 1 in the SQL query and the select clause is something like SELECT 1 AS one

  • Related