mysql查询从用户表中获取发送者和接收者的名称时,我有一个问题
USER_MATCH_LIST
表的结构如下
这是用户
表
我想加入senderId与用户表,并获取firstname+lastname作为senderName,与receiverId相同,获取name作为receiverName,请指导我,谢谢
听起来您需要两个join
:
select uml.*,
concat(us.firstname, ' ', us.lastname) as sendername,
concat(ur.firstname, ' ', ur.lastname) as receivername,
from user_match_list uml join
users us
on uml.sendid = us.id join
users ur
on uml.receiverid = ur.id;
您应该使用两个联接:
SELECT us.firstName + ' ' + us.LastName,
us2.firstName + ' ' + us2.LastName
FROM dbo.user_match_list AS um
INNER JOIN dbo.Users AS us ON um.senderId = us.Id
INNER JOIN dbo.Users AS us2 ON uml.receiverId = us2.Id