2013-02-15 42 views
1

使用AREL/Rails的calculations我試圖執行以下操作:Rails的活動記錄數在整個計算字段

SELECT to_char(timestamp, 'YYYY-MM-DD') AS segment, COUNT(*) AS counter 
FROM pages 
GROUP BY segment 
ORDER BY segment 

我可以運行類似:

Page.order(FIELD).count(group: FIELD) 
{ a: 1, b: 4, c: 1 } 

不過,我可以」噸計算領域的工作。有什麼想法嗎?

回答

0

想出了這個:

Page.count(:all, from: "(SELECT to_char(#{SEGMENT}, 'YYYY-MM-DD') AS segment FROM pages) AS pages", group: "segment", order: "segment") 
> SELECT COUNT(*) AS count_all, segment AS segment FROM (SELECT to_char(created_at, 'YYYY-MM-DD') AS segment FROM pages) AS pages GROUP BY segment ORDER BY segment