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

Popular posts from this blog

apache - Remove .php and add trailing slash in url using htaccess not loading css -

javascript - jQuery show full size image on click -