C# 将username从另一个表中提取到包含两个具有UserID的字段的表中
我有两个表,即C# 将username从另一个表中提取到包含两个具有UserID的字段的表中,c#,sql,C#,Sql,我有两个表,即tblUser和tblForward,具有以下列: tblUser: UserID Username ForwardID ForwardedToUserID (--> tblUser.UserID) ForwardedFromUserID (--> tblUser.UserID) tbl向前: UserID Username ForwardID ForwardedToUserID (
tblUser
和tblForward
,具有以下列:
tblUser:
UserID
Username
ForwardID
ForwardedToUserID (--> tblUser.UserID)
ForwardedFromUserID (--> tblUser.UserID)
tbl向前:
UserID
Username
ForwardID
ForwardedToUserID (--> tblUser.UserID)
ForwardedFromUserID (--> tblUser.UserID)
现在我想做的是使用ForwardedToUserID
和ForwardedFromUserID
从tblUser
获取Username
,并在从tblForward
获取数据时显示Username
(而不是UserID
)
我如何做到这一点?您需要做的是使用
在OP中,要连接
ForwardedTouseId和ForwardedFromUserID
select max(Fromuser),max(ToUser) from (
select UserName as Fromuser, '' as ToUser from tblUsers A
inner join tblForward B ON A.UserID = B.ForwardedToUserID
union all
select '' as Fromuser, UserName as ToUser from tblUsers A
inner join tblForward B ON A.UserID = B.ForwardedFromUserID) as t
我建议你:
SELECT A.UserName, B.UserName AS ForwardedToUserName, C.UserName AS ForwardedFromUserName
FROM tblUsers A
INNER JOIN tblForward B ON A.UserID = B.ForwardedToUserID
INNER JOIN tblForward C ON A.UserID = C.ForwardedFromUserID
因为它返回所有用户ID的关联用户名,所以您需要使用“加入”。尝试搜索“sql连接”作为开始。我想从tblForward获取数据,现在它正在“ForwardedTouseId”和“ForwardedFromUserID”中为我提供用户ID。当我从tblForward获取数据时,我想显示名称和其他数据。@TashiTobgay,我注意到您添加了c#标记,您在将select的结果获取到应用程序中时遇到了问题,还是select语句出现了问题?请澄清您的问题,以避免否决票,添加相关代码,并指出您的问题答案,这将从tblUsers获取用户名和相关用户名。现在,我如何将此用户名与从tblForward?获取的数据相结合。这给出了一个名称列表,但我如何识别哪个用户转发到用户名,哪个用户名转发到用户名?@TashiTobgay现在检查一下