How would you optimize a slow-running SQL query that joins multiple large tables containing user profiles, bookings, and reviews?