问题: 如何使用 SQL 查询语句在 Oracle 中显示员工姓名、部门名,并按部门号排序?

解决方案:

使用内连接: 'SELECT e.employee_name, d.department_name FROM employees e JOIN departments d ON e.department_id = d.department_id ORDER BY d.department_id;'

使用子查询: 'SELECT employee_name, (SELECT department_name FROM departments WHERE department_id = employees.department_id) as department_name FROM employees ORDER BY department_id;'

直接连接: 'SELECT ename, dname, deptno FROM emp, dept WHERE emp.deptno = dept.deptno ORDER BY deptno'

常见的错误:

'SELECT emp1.ename 员工, emp2.ename 上级 ename FROM emp1, emp2 WHERE emp1.mgr = emp2.empno'

这个 SQL 查询语句是错误的,因为它引用了两个不同的表格(emp1 和 emp2),但在 FROM 子句中没有为它们提供别名或 JOIN 语句来将它们连接。您需要重新编写查询语句,例如: 'SELECT emp1.ename AS 员工, emp2.ename AS 上级 FROM emp emp1 INNER JOIN emp emp2 ON emp1.mgr = emp2.empno;'

Oracle SQL 查询:按部门号排序显示员工姓名和部门名

原文地址: https://www.cveoy.top/t/topic/nVaq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录