Friday, April 15, 2011

Self Join Example in sql server


Employee



 Table#1





Employee ID
FirstName
LastName
DesignationID
ReportingManager
1001
Amit
Johnson
101
1004
1002
Jim
Collins
102
1001
1003
John
Rosemond
102
1001
1004
Liz
Pulliam
103
1004
1005
Clara
Shih
101
1004
1006
Rocky
Singh
102
1005


Designation

 Table#2



DesignationID
Name

101
Creative Director

102
Designer

103
Digital Marketing Manager

104
President



 Output

 Table#3



Write an SQL query to retrieve following output in following format.



Full Name
Designation
Manager's Name

======================================================================
SELECT     EmployeeName.FirstName + ' ' + EmployeeName.LastName AS EmployeeName, Employee.FirstName + ' ' + Employee.LastName AS ManagerName,
                      Designation.Name AS Designation
FROM         Employee INNER JOIN
                      Employee AS EmployeeName ON Employee.EmployeeId = EmployeeName.ReportingManager INNER JOIN
                      Designation ON Employee.DesignationId = Designation.DesignationId

======================================================================

Output:
             EmployeeName         ManagerName        Designation
            =============       ============        =========
             Amit Johnson            Liz Pulliam               Digital Marketing Manager
            Jim  Collins                Amit Johnson           Creative Director
            John Rosemond        Amit Johnson           Creative Director
            Liz Pulliam                 Liz Pulliam                Digital Marketing Manager
            Clara Shih                  Liz Pulliam               Digital Marketing Manager
            Rocky  Singh             Clara Shih                Creative Director

No comments:

Post a Comment