概述
今天遇到这样一个需求,有两个表,分别为tb_a、tb_b。
tb_a表中包含有2个ID(FromID和ToID),我们可以暂且把它理解为发送者ID和接受者ID;
tb_b表中包含对该ID的详细记录,根据ID记录着用户的姓名;
想通过B表当中的ID查找到A表当中ID所对应的发送者与接受者名称,下图为最终想要实现的效果:
使用T-SQL实现
SELECT b1.UserName AS Name_From,b2.UserName AS Name_To,a.SendTime FROM tb_a AS a JOIN tb_b AS b1 ON a.ID_From=b1.UserID JOIN tb_b as b2 ON a.ID_To=b2.UserID
请教各位高手
在这里我使用了两次对表的join连接,这样在效率上会不会很慢?请问各位高手是否有更好的办法来实现上述需求?