0
Je cet extrait de ActiveRecord:Exprimer un CTE en utilisant Arel
scope = Listing.where(Listing.arel_table[:price].gt(6_000_000))
Le sql résultant:
SELECT listings.* FROM listings where listings.price > 6000000
Je voudrais ajouter un CTE qui entraînerait cette sql:
WITH lookup AS (
SELECT the_geom FROM lookup WHERE slug = 'foo-bar'
)
SELECT * from listings, lookup
WHERE listings.price > 6000000
AND ST_within(listings.the_geom, lookup.the_geom)
Je voudrais exprimer ce sql inclus du CTE en utilisant Arel et ActiveRecord.
Je voudrais également utiliser la variable scope comme point de départ.
En essayant cela, il en résulte un 'from' manquant. c'est à dire. juste 'SELECT * FROM listes WHERE' pas' SELECT * FROM listes, recherche WHERE' –
Cela fonctionne en ajoutant un 'joint':' scope.joins ('CROSS JOIN lookup'). avec (cte) ' –