instance method
count_by_sql
Ruby on Rails 5.2.8.1
Since v3.2.22.5Signature
count_by_sql(sql)
Returns the result of an SQL statement that should only include a COUNT(*) in the SELECT part. The use of this method should be restricted to complicated SQL queries that can’t be executed using the ActiveRecord::Calculations class methods. Look into those before using this.
Product.count_by_sql "SELECT COUNT(*) FROM sales s, customers c WHERE s.customer_id = c.id" # => 12
Parameters
-
sql- An SQL statement which should return a count query from the database, see the example above.
Parameters
-
sqlreq
Source
# File activerecord/lib/active_record/querying.rb, line 66
def count_by_sql(sql)
connection.select_value(sanitize_sql(sql), "#{name} Count").to_i
end
Defined in activerecord/lib/active_record/querying.rb line 66
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveRecord::Querying