[英]Complex Postgres SQL to RoR ORM
环境:RoR 3.2 + Postgres
我创建了一个具有2个文本属性的services
表: title
和description
我要进行以下全文搜索:
SELECT * FROM (
SELECT DISTINCT ON (s.id) s.*,
ts_rank_cd(s.service_tsv, query) AS rank
FROM to_tsquery('red | drawing | fun') AS query,
services AS s
WHERE (s.service_tsv @@ query)
ORDER BY s.id DESC
) AS sub ORDER BY rank DESC;
SQL语句就像一个超级按钮一样工作,但是如何将其转换为Rails ORM:
Service.joins(???).where(???).uniq
Service.find_by_sql(%q{SELECT * FROM (
SELECT DISTINCT ON (s.id) s.*,
ts_rank_cd(s.service_tsv, query) AS rank
FROM to_tsquery('red | drawing | fun') AS query,
services AS s
WHERE (s.service_tsv @@ query)
ORDER BY s.id DESC
) AS sub ORDER BY rank DESC})
此处的指南http://guides.rubyonrails.org/active_record_querying.html#finding-by-sql
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.