sql - Join tables from multiple sources -
i'm trying create query (which i'll turn view later) perform training reports. basically, employee can have training assigned multiple sources, in case directly or part of job. might have this
select c.id, c.name, c.cost course c join job_assignment ja on ja.course_id = c.id join employee emp on emp.job_id = ja.id emp.name = 'bob' select c.id, c.name, c.cost course c join personal_assignment pa on pa.course_id = c.id join employee emp on emp.job_id = pa.id emp.name = 'bob'
what want like
select c.id, c.name, c.cost course c join magic_personal_and_job_assginment_combiner magic on magic.course_id = c.id join employee emp on emp.id = magic.employee_id emp.name = 'bob'
but don't see how make logical connections. can in 2 queries, don't know how combine them one.
i'm using oracle, imagine answer rooted in plain-jane sql.
you use union connecting 2 existing queries (which work) , add column distinguish source, (if understand problem correctly):
select c.id, c.name, c.cost, 'job assign' assign_source course c join job_assignment ja on ja.course_id = c.id join employee emp on emp.job_id = ja.id emp.name = 'bob' union select c.id, c.name, c.cost, 'pers assign' assign_source course c join personal_assignment pa on pa.course_id = c.id join employee emp on emp.job_id = pa.id emp.name = 'bob'
Comments
Post a Comment