Q:

SQL Server Fetching values from table and joining values from same table

I am having a bit of a tough time trying to figure out how to query results on its own table & join data.
My Employees table contains the following headers:
Employee_Nbr
First_Name
Last_name
Manager_Nbr
Email

For example this Employees table contains data such as:
 1. 21 Mickey Mouse 10 mmouse@disney.com
 2. 5 Donald Duck 10 dduck@disney.com
 3. 8 Pluto Dog 21 pdog@disney.com
 4. 10 Walt Disney 0 wdisney@disney.com
 5. 0 El Presidente NULL president@disney.com

How do I write a script that will recurse through the table, query itself to match the Manager Numbers & append the managers' email address at the end of the query results such as this:
 1. 21 Mickey Mouse 10 mmouse@disney.com wdisney@disney.com
 2. 5 Donald Duck 10 dduck@disney.com wdisney@disney.com
 3. 8 Pluto Dog 21 pdog@disney.com mmouse@disney.com
 4. 10 Walt Disney 0 wdisney@disney.com president@disney.com
 5. 0 El Presidente *NULL* president@disney.com *NULL*

I'm not too concerned with the uppermost manager.
I wrote this query, but it is giving me some really odd results such as giving each employee a line of results for however employees their manager has:
SELECT 
    t1.Employee_Nbr, 
    t1.First_Name, 
    t1.Last_Name, 
    t1.Manager_Nbr, 
    t1.Email, 
    t2.Email AS Manager_Email
FROM 
    dbo.Employees t1
LEFT JOIN 
    dbo.Employees t2 on t2.Manager_Nbr = t1.Manager_Nbr

Could someone help me out with my query please?
Thank you very much.

A:

You close just use t1.Manager_Nbr instead of t1.Employee_Nbr in the JOIN condition, because t1 is your base table t2 is your Manager table, so get Manager number instead of Employee_Nbr
SELECT t1.Employee_Nbr, 
t1.First_Name, 
t1.Last_Name, 
t1.Manager_Nbr, 
t1.Email, 
t2.Email AS Manager_Email
FROM dbo.Employees t1
LEFT JOIN dbo.Employees t2 on t2.Employee_Nbr = t1.Manager_Nbr

sqlfiddle

