Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- INSERT INTO payments
- SELECT visits.id,
- ships.id,
- seaports.id,
- service_costs.id,
- CASE WHEN service_costs.start_date > visits.arrival THEN service_costs.start_date ELSE visits.arrival END,
- CASE WHEN service_costs.end_date < visits.departure THEN service_costs.end_date ELSE visits.departure END,
- ((CASE WHEN service_costs.end_date < visits.departure THEN service_costs.end_date ELSE visits.departure END) - (CASE WHEN service_costs.start_date > visits.arrival THEN service_costs.start_date ELSE visits.arrival END))*service_costs.price_per_day
- FROM visits
- INNER JOIN ships ON (visits.ship_id = ship.id)
- INNER JOIN seaports ON (seaports.id = visits.seaport_id)
- INNER JOIN service_costs ON (
- service_costs.seaport_id = seaports.id AND
- service_costs.min_displacement <= ships.displacement AND
- service_costs.max_displacement >= ships.displacement AND
- service_costs.date_start <= visits.departure AND
- service_costs.date_end <= visits.arrival
- )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement