3 way join

Hi,
I have 3 files each having 2 cols
e.g
File1
empid deptid
1 100
2 200
3 200
4 100
5 300
File2
empid salary
1 10
2 20
3 30
4 40
5 50
6 60
File3
deptid deptname
100 A
200 B
300 C
400 D
in the output i want total amt spent on each dept i.e A,B,C,D which would be a sum in rollup for each dept(100,200,300,400) salary of each employee.
So here i will have to join
File1.empid =File2.empid (which gives salaries) AND
File1.deptid = File3.deptid (which gives dept name)
So... in o/p i want dept_name and amt_spent_each_dept
My solution has
File1 ---
File2 ------[ JOIN] ---[Rollup] --- [File4 as output]
File3 ---
But what condition can i have in JOIN component to join these 3 tables ?

Questions by vital_parlsey   answers by vital_parlsey

Showing Answers 1 - 3 of 3 Answers

I believe what you are looking for is a query like this:

select f3.deptname dept_name, sum(isnull(f2.salary,0)) amt_spent_each_dept
from file3 f3 left join file1 f1 on (f3.deptid = f1.deptid)
left join file2 f2 on (f1.empid = f2.empid)
group by f3.deptname
order by f3.deptname

  Was this answer useful?  Yes

Give your answer:

If you think the above answer is not correct, Please select a reason and add your answer below.

 

Related Answered Questions

 

Related Open Questions