我有消息表,其中存在“senderid”和“receiverid”。
我有用户表,其中找到每个用户的用户名。
现在我想创建一个存储过程,在其中选择 userid=senderid 的用户名和 userid=receivername 的用户名。
我试过了,但这是错误的,因为我以前从未做过这样的事情。
SELECT SystemUser.SU_Username Where SystemUser.SU_ID=MessageReciever As RecieverName, SystemUser.SU_Username where Message.SenderID = SystemUser.SU_ID As SenderName FROM Message CROSS JOIN
SystemUser
有没有办法做我想做的事?
最佳答案
从 SystemUser 表中选择两次,使用表别名:
SELECT SUR.SU_Username As RecieverName
, SUS.SU_Username As SenderName
FROM Message
JOIN SystemUser SUR
on (SUR.SU_ID = Message.MessageReciever )
JOIN SystemUser SUS
on (SUS.SU_ID = Message.SenderID )
关于sql - 如何从具有不同值的表中两次选择一个值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12552768/