我剛剛開始在軌道上的紅寶石,並有一個更復雜的查詢一個問題。到目前爲止,我在查看導軌指南時做了簡單的查詢,並且它工作得非常好。從軌道上的ruby執行查詢正確的方式
現在我試圖從數據庫中獲取一些Ids,我會使用這些Ids來獲得真實的對象並對它們做些什麼。獲取這些比簡單的Object.find方法複雜一些。
這裏是我的查詢看起來像:
select * from quotas q, requests r
where q.id=r.quota_id
and q.status=3
and r.text is not null
and q.id in
(
select A.id from (
select max(id) as id, name
from quotas
group by name) A
)
order by q.created_at desc
limit 1000;
執行從SQL管理該查詢時,這會給我1000個IDS。我想先獲得id列表,然後通過id查找對象。
有沒有辦法通過使用此查詢直接獲取這些對象?避免ID查找?我用Google搜索,你可以這樣執行查詢:
ActiveRecord::Base.connection.execute(query);
感謝您的回覆我得到這個錯誤'缺少表的「FROM-clause條目」quotas「'。我在哪裏錯過了,你能告訴嗎? – 2013-02-22 08:41:01