मैं मॉडल Subscription
जो has_many
Version
एस.
एक Version
एक status
, plan_id
और authorized_at
तारीख.
किए गए किसी भी परिवर्तन करने के लिए एक Subscription
से आता है एक Version
संशोधनों को अद्यतन यह माता पिता Subscription
.
लक्ष्य खोजने के लिए है प्रत्येक सदस्यता के Version
के साथ सबसे पुराना authorized_at
तारीख WHERE
के versions.plan_id
के रूप में ही है subscriptions.plan_id
(दूसरे शब्दों में, मैं की जरूरत है प्राधिकरण की तारीख Version
जहां plan_id
परिवर्तित करने के लिए वर्तमान Subscription
's 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...