Sql 返回manager';s的名字而不是经理';用户ID
我试图找出如何返回经理的姓名而不是经理的用户IDSql 返回manager';s的名字而不是经理';用户ID,sql,sql-server,tsql,Sql,Sql Server,Tsql,我试图找出如何返回经理的姓名而不是经理的用户ID SELECT u.fname, u.lname, ua.email, ( SELECT distinct u.mgrUserid FROM users WHERE u.mgrUserid IS NOT NULL ) AS 'manager' FROM dbo.quizzes_users qu INNER JOI
SELECT u.fname,
u.lname,
ua.email,
(
SELECT distinct u.mgrUserid
FROM users
WHERE u.mgrUserid IS NOT NULL
) AS 'manager'
FROM dbo.quizzes_users qu
INNER JOIN dbo.quizzes q ON qu.quizId = q.quizId
INNER JOIN dbo.users u ON qu.userId = u.userId
INNER JOIN intela.dbo.users_all ua ON u.userId = ua.userId
WHERE qu.quizId = @quizId
上述查询目前为我提供了以下结果:
fname lname email manager
John Smith john.smith@email.com 5
Tim Walker tim.walker@email.com 1
fname lname email manager
John Smith john.smith@email.com Mike Jones
Tim Walker tim.walker@email.com David Larson
我试图得到以下结果:
fname lname email manager
John Smith john.smith@email.com 5
Tim Walker tim.walker@email.com 1
fname lname email manager
John Smith john.smith@email.com Mike Jones
Tim Walker tim.walker@email.com David Larson
我认为您需要一个相关子查询:
(SELECT um.lname
FROM users um
WHERE u.mgrUserid = um.Userid
) AS manager
我认为您需要一个相关子查询:
(SELECT um.lname
FROM users um
WHERE u.mgrUserid = um.Userid
) AS manager
内部联接是一个选项
SELECT u.fname,
u.lname,
ua.email,
mgr.[manager's name] AS 'manager'
FROM dbo.quizzes_users qu
INNER JOIN dbo.quizzes q ON qu.quizId = q.quizId
INNER JOIN dbo.users u ON qu.userId = u.userId
INNER JOIN dbo.users mgr ON u.mgrUserId = mgr.UserId
INNER JOIN intela.dbo.users_all ua ON u.userId = ua.userId
WHERE qu.quizId = @quizId
内部联接是一个选项
SELECT u.fname,
u.lname,
ua.email,
mgr.[manager's name] AS 'manager'
FROM dbo.quizzes_users qu
INNER JOIN dbo.quizzes q ON qu.quizId = q.quizId
INNER JOIN dbo.users u ON qu.userId = u.userId
INNER JOIN dbo.users mgr ON u.mgrUserId = mgr.UserId
INNER JOIN intela.dbo.users_all ua ON u.userId = ua.userId
WHERE qu.quizId = @quizId