How do I combine the output of different queries.
I have the following sql queries with the output:
1) select d.departmentid, d.name, count(distinct(sg.personid)) as noOfStudents from department d inner join course c on c.departmentid = d.departmentid inner join student_grade sg on sg.courseid = c.courseid group by d.departmentid, d.name;
+--------------+--------------+--------------+
| departmentid | name | noofstudents |
+==============+==============+==============+
| 101 | Computer Sci | 1 |
| 104 | Mech | 2 |
| 103 | EEE | 1 |
+--------------+--------------+--------------+
2) select d.departmentid, d.name, count(distinct(ci.personid)) as noOfTeachers from department d inner join course c on c.departmentid = d.departmentid inner join course_instructor ci on ci.courseid = c.courseid group by d.departmentid, d.name;
+--------------+--------------+--------------+
| departmentid | name | noofteachers |
+==============+==============+==============+
| 101 | Computer Sci | 1 |
| 103 | EEE | 2 |
| 104 | Mech | 1 |
| 102 | ECE | 3 |
+--------------+--------------+--------------+
3) select d.departmentid, d.name, count(distinct(c.courseid)) as noOfCourses from department d inner join course c on c.departmentid = d.departmentid group by d.departmentid, d.name;
+--------------+--------------+-------------+
| departmentid | name | noofcourses |
+==============+==============+=============+
| 101 | Computer Sci | 3 |
| 102 | ECE | 3 |
| 104 | Mech | 1 |
| 103 | EEE | 2 |
+--------------+--------------+-------------+
Now I want to combine all three into a single table to display the data. How can I do that?
Here I am trying UNION operation and is it good to use?