Oracle 多表查询
在Oracle中进行多表查询通常使用JOIN语句,如INNER JOIN、LEFT OUTER JOIN、RIGHT OUTER JOIN和FULL OUTER JOIN。以下是一个简单的多表查询示例,假设我们有两个表:employees(员工表)和departments(部门表)。
SELECT e.last_name, e.job_id, d.department_name
FROM employees e
INNER JOIN departments d ON e.department_id = d.department_id;
这个查询将返回所有员工的姓氏、工作ID和他们所在部门的名称,前提是每个员工都有对应的部门ID。
如果你想要左外连接,可以这样写:
SELECT e.last_name, e.job_id, d.department_name
FROM employees e
LEFT OUTER JOIN departments d ON e.department_id = d.department_id;
这将返回所有员工的信息,即使他们没有对应的部门信息。
如果你想要右外连接,可以这样写:
SELECT e.last_name, e.job_id, d.department_name
FROM employees e
RIGHT OUTER JOIN departments d ON e.department_id = d.department_id;
这将返回所有部门的信息,即使没有员工属于这些部门。
如果你想要全外连接,可以这样写:
SELECT e.last_name, e.job_id, d.department_name
FROM employees e
FULL OUTER JOIN departments d ON e.department_id = d.department_id;
这将返回所有员工和部门的信息,即使没有员工属于某些部门,也即使有部门没有员工属于。
评论已关闭