У меня есть модель Subscription
который has_many
Version
s.
A Version
имеет status
, plan_id
и authorized_at
Дата.
Любые изменения, внесенные в Subscription
происходит от Version
изменения, обновляющие его родительский Subscription
.
Цель состоит в том, чтобы найти каждую подписку Version
с самым старшим authorized_at
Дата WHERE
то versions.plan_id
это то же самое, что и subscriptions.plan_id
(другими словами, мне нужна дата авторизации Version
Где plan_id
изменен на текущий Subscription
'с plan_id
).
Это вопрос, который я задал. Я получаю ошибку в синтаксисе агрегатной функции:
syntax error at or near "MIN" LINE 3: MIN (authorized_at) from versions ^
запрос:
select subscriptions.id,
MIN (authorized_at) from versions
where versions.plan_id = subscriptions.plan_id
) as current_version
from subscriptions
join versions on subscriptions.id = versions.subscription_id
where versions.status = 'processed'
Я также не уверен, следует ли мне группировать версии по plan_id
а затем выбираем из каждой группы. Я вроде как заблудился.
ActiveRecord::StatementInvalid: PG::SyntaxError: ERROR: syntax error at or near "WHERE" LINE 6: ...s.id, v.authorized_at WHERE "sub...