php - Complicated SQL figuring out how to pull most recent data -
i writing function calculate order total. looking @ sql pull information , not hack php have.
each order has order offers each item. since commonly have order amendments there might more 1 version of order offer. highest offer version data use in calculating price.
now, here sql use pull of order offers individual orders:
select * order_offer offer offer.order_id = ? , offer.offer_version in (select max(offer_version) order_offer offer_id = offer.offer_id) now, need create similar sql pull coupons each order offer. each order offer may have more 1 coupon or may not have them @ all.
here sql use find valid order offers can have coupons applied (if helps)
select * order_offer offer offer.order_id = ? , offer.offer_version in (select max(offer_version) order_offer offer_id = offer.offer_id) , offer.offer_id not in ( select o.offer_id order_offer o left join order_coupons c on o.offer_id = c.offer_id o.offer_version = offer.offer_version , o.offer_version = c.offer_version , c.order_coupon_stackable = 0 , o.order_id = offer.order_id ) thank help!
can't (it give coupons last offer):
select * order_offer offer left join order_coupons c on offer.offer_id = c.offer_id , offer.offer_version = c.offer_version offer.order_id = ? , offer.offer_version in (select max(offer_version) order_offer offer_id = offer.offer_id)
Comments
Post a Comment