Hi Jeremy,
Sorry for previous question thread. I deleted it to not confusing.
This is what I am trying to do:
select sum(sp.storage_size) + sum(bp.storage_size) as storage_size
from subscriptions s
left join subscription_packages sp on s.subscription_package_id = sp.id
left join bounty_packages bp on s.bounty_package_id = bp.id
where s.user_id = 4 and
(subscriptions.expires_on IS NULL OR subscriptions.expires_on <= '2018-04-01
10:10:10');
This is what I tried so far:
Subscription.select { Sequel.cast(sum(Sequel[:bounty_packages][:storage_size
]) + sum(Sequel[:subscription_packages][:storage_size]), :bigint).as(:
total_size) }
.left_join(:subscription_packages, id: :
subscription_package_id)
.left_join(:bounty_packages, id: Sequel[:subscriptions
][:bounty_package_id])
.where(user: user)
.where{ Sequel.('subscriptions.expires_on': nil) |
subscriptions__expires_on
<= Time.now.utc }.first
Am I doing in correct way? Especially on where{} and sum() clauses. Is
there any better way of doing this?
Thanks,
Gencer
--
You received this message because you are subscribed to the Google Groups
"sequel-talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sequel-talk.
For more options, visit https://groups.google.com/d/optout.