'ActiveRecord WHERE NOT EXISTS
Is there a way to use EXISTS with ActiveRecord besides find_by_sql?
I'd like a nice way to find all records without an association in a One-to-Many relationship.
SELECT DISTINCT store_type FROM stores
WHERE NOT EXISTS (SELECT * FROM cities_stores
WHERE cities_stores.store_type = stores.store_type)
Solution 1:[1]
Store.all(:select => "DISTINCT store_type",
:conditions => "NOT EXISTS (SELECT * FROM cities_stores WHERE cities_stores.store_type = stores.store_type)")
ActiveRecord will execute the same query as what you entered above. The returned Store instances will have a single store_type attribute.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | François Beausoleil |
