Я хотел бы получить все записи в день с наивысшим приоритетом (как определено в соответствующей модели)
Я изо всех сил пытаюсь построить это с помощью activerecord (rails 4.2)
Проблема в том,очень похоже на этот Получить записи с максимальным значением для каждой группы сгруппированных результатов SQL за исключением того, что возраст будет получен из второй модели
или также этой с activerecordЯ выбираю записи на основе наибольшего значения поля?
Model 1: Workduration:
date, duration
belongs_to :timerule
Model 2: Timerule:
priority
has_many :workdurations
Я собрал данные следующим образом (все в Workduration)
def self.withPrio
select("workdurations.*, timerules.prio AS prio").joins(:timerule)
end
Я не смог найтиправильный способ построить левое внешнее соединение (самостоятельное соединение) на нем.
Код проб и ошибок:
Workduration.withPrio.joins("left join ? workdurations.date = wd2.date and workdurations.prio < wd2.prio", Workduration.withPrio)
Любая помощь приветствуется!