您好我有一个包含以下列的员工表
Emp_id,Emp_Name and Mgr_id.
我正在尝试创建一个将列出的视图
Emp_id,Emp_name,Mgr_id和Mgr_name(通过交叉加入Employee表).我尝试了外连接,内连接等,但我无法做到正确.
任何帮助都非常感谢.
CREATE TABLE [dbo].[tblEmployeeDetails]( [emp_id] [bigint] NOT NULL,[emp_name] [nvarchar](200) NULL,[emp_mgr_id] [bigint] NULL,CONSTRAINT [PK_tblEmployeeDetails] PRIMARY KEY CLUSTERED ( [emp_id] ASC )WITH (PAD_INDEX = OFF,STATISTICS_norECOmpuTE = OFF,IGnorE_DUP_KEY = OFF,ALLOW_ROW_LOCKS = ON,ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
解决方法
CREATE VIEW AS SELECT e1.emp_Id EmployeeId,e1.emp_name EmployeeName,e1.emp_mgr_id ManagerId,e2.emp_name AS ManagerName FROM tblEmployeeDetails e1 JOIN tblEmployeeDetails e2 ON e1.emp_mgr_id = e2.emp_id
编辑:
左连接将起作用.
CREATE VIEW AS SELECT e1.emp_Id EmployeeId,e2.emp_name AS ManagerName FROM tblEmployeeDetails e1 LEFT JOIN tblEmployeeDetails e2 ON e1.emp_mgr_id = e2.emp_id
原文地址:https://www.jb51.cc/mssql/78034.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。