У меня есть база данных postgresql с почасовыми записями о потреблении газа. Теперь мне нужно найти дни с наибольшим потреблением для каждого месяца.
В простом SQL я бы использовал такие подзапросы:
SELECT
DATE_TRUNC('month', day) AS month,
MAX(dailyconsumption) as maxconsumption
FROM (
SELECT
DATE_TRUNC('day', date) AS day,
SUM(consumption) AS dailyconsumption
FROM Records
GROUP BY day
) t
GROUP BY month
Однако я не знаю, как лучше всего (или вообще) сделать это на рельсах. Я ценю любой вклад. Должен ли я обойти ActiveRecord? Производительность является высоким приоритетом.
Спасибо!