求一sql语句,或一个思路,急。。。在线等。。。
提交页面中有三个下拉列表控件,绑定相同的数据源(同一个表中的数据,这个表只有id,name两个定段),用户选择后分别将选择项的ID存到数据库的三个字段中
问题:前台显示页面,如何根据三个ID显示其对应的name(三个id源于同一个表),我的sql语句是这样写的
select tb1.*,
(select name from tb2 where tb2.id=tb1.id1) as name1,
(select name from tb2 where tb2.id=tb1.id2) as name2,
(select name from tb2 where tb2.id=tb1.id3) as name3
from
tb1
有朋友说这样写效率低,但哥们我不知道更高效率的写法,或,更好的解决方法
请大侠们鼎力相助,帮我解决一下,有什么更好的方法或有什么更好的sql语句的写法,,谢谢大家
[解决办法]
select tb1.*,T1.Name as name1,T2.Name as name2,T3.Name as name3
from tb1 inner join tb2 T1 on T1.id=tb1.id1
inner join tb2 T2 on T2.id=tb1.id2
inner join tb2 T3 on T3.id=tb1.id3
[解决办法]
兄弟,你的那个方法是子查询,子查询效率很低的。我的方法是内连接,集合操作,当然效率高多了
[解决办法]
select tb1.*,name as name1,name as name2,name as name3
from
tb1
这样部行吗?
[解决办法]