Advertisement
ahmedrahil786

MFT by Region - Leon Dashboard

May 21st, 2019
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.03 KB | None | 0 0
  1. set @startdate = date_sub(CURDATE(), interval 1 day);
  2. set @startdate2 = date_sub(@startdate, interval 1 month);
  3.  
  4. select
  5. members.id as mid,
  6. MIN(reservations.id) as first_res,
  7. date(reservations.occupy_start_at + interval '8' hour) as date,
  8. (YEAR(reservations.occupy_start_at) - YEAR(members.birthday)) as age,
  9. COUNT(reservations.id) as srid,
  10. round((timestampdiff(minute, convert_tz(reservations.start_at, '+00:00', '+8:00'), convert_tz(reservations.end_at, '+00:00', '+8:00'))/60),2) as sdur,
  11. zones.city as zone_city,
  12. zones.region as zone_region,
  13. cc.car_name as carname,
  14. #cars.id as carid,
  15. #IFNULL(ma.domain_locality,0) as location,
  16. IFNULL(ma.recommender,"") as referral,
  17. IFNULL(coupons.comment,"") as coupon,
  18. IFNULL(round(c.rev,2),0) as rev,
  19. round((IFNULL(c.rev,0) - IFNULL(p.coupon,0)),2) as net_rev,
  20. round(IFNULL((IFNULL(p.coupon,0)/c.rev),0),2) as coupon_rate
  21. from reservations
  22. left join members on reservations.member_id = members.id
  23. left join coupons on coupons.reservation_id = reservations.id
  24. left join zones on reservations.start_zone_id = zones.id
  25. left join (
  26. select IFNULL(payments.amount,0) as coupon, payments.reservation_id as rid
  27. from payments
  28. where payments.state = 'normal' and payments.paid_type = 'coupon'
  29. ) as p on p.rid = reservations.id
  30. left join (
  31. select sum(charges.amount) as rev, charges.reservation_id as rid
  32. from charges
  33. where charges.state = 'normal' and charges.kind IN ('rent' , 'oneway', 'd2d', 'mileage')
  34. group by charges.reservation_id
  35. ) as c ON reservations.id = c.rid
  36. left join cars on cars.id = reservations.car_id
  37. left join car_classes cc on cc.id = cars.car_class_id
  38. left join member_appendixes ma on members.id = ma.member_id
  39. where
  40. reservations.state = 'completed'
  41. and members.imaginary in ('normal', 'sofam')
  42. and DATE(CONVERT_TZ(members.created_at,'+00:00','+8:00')) <= @startDate
  43. and DATE(CONVERT_TZ(members.created_at,'+00:00','+8:00')) >= @startDate2
  44. group by members.id
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement