I'm new to MySQL and have tried many attempts myself and looked all over for
this answer to no avail.  How do I write MySQL joins to accomodate the
Oracle equivalent listed below........any help would be appreciated.

From
  iteration,
  story,
  person tracker,
  person customer,
  person developer,
  task,
  time_entry
Where
  iteration.id=story.iteration_id and
  story.tracker_id=tracker.id(+) and
  story.id=task.story_id(+) and
  story.customer_id=customer.id(+) and
  task.acceptor_id=developer.id(+) and
  task.id=time_entry.task_id(+)

I've got this so far, but it seems to be returning a cartesian product
between iteration and story

SELECT
  task.name,
  developer.name,
  time_entry.start_time,
  story.name,
  customer.name,
  tracker.name,
  iteration.name
FROM
   (
    (
      (story left outer join 
        (task 
        left outer join time_entry on task.id=time_entry.task_id 
        left outer join person as developer on task.acceptor_id=developer.id
        ) 
      on story.id=task.story_id
      ) left outer join person as customer on story.customer_id=customer.id
    ) left outer join person as tracker on story.tracker_id=tracker.id
  ) join iteration on  story.iteration_id=iteration.id
  

Reply via email to