使用简单的自我加入列出员工经理:
CREATE VIEW AS
SELECT e1.EMP_ID EmployeeId, e1.FNAME EmployeeName,
e1.MANAGER ManagerName
FROM EMPLOYEE e1
LEFT JOIN EMPLOYEE e2
ON e1.MANAGER = e2.EMP_ID
有问题的表是EMPLOYEE,主键是EMP_ID。
MySQL和Oracle都返回代码错误;虽然我尝试了许多不同的变体,但主要的障碍是对所讨论的表(e1和e2)使用别名,而dbms认为这些都不是合法的标识符。
答案 0 :(得分:3)
您的观点需要一个名称:
CREATE VIEW v_emp AS
SELECT e1.EMP_ID EmployeeId, e1.FNAME EmployeeName,
e1.MANAGER ManagerName
FROM EMPLOYEE e1
LEFT JOIN EMPLOYEE e2
ON e1.MANAGER = e2.EMP_ID