日期:2014-05-19  浏览次数:20566 次

两个表查询的问题,急!!!
表一:学生表
学生编号   名称   住址   ...
表二:学校成绩汇总表
一年级   数学第一名的学生编号   语文第一名学生编号   ....

说明:就是在表二中有多个字段都对应表一中的一个字段,我想查询出来的结果是:
一年级   数学第一名的学生姓名   语文第一名学生姓名   ....

请各位高手指教!!!


------解决方案--------------------
select a.年级,b1.姓名,b2.姓名 from 学校成绩汇总表 a
left join 学生表 b1 on a.数学第一名的学生编号=b1.学生编号
left join 学生表 b2 on a.语文第一名的学生编号=b2.学生编号

*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码)

最新版本:20070212

http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
------解决方案--------------------
--try

select * from T2
left join T1 as A on T2.数学第一名的学生编号=A.学生编号
left join T1 as B on T2.语文第一名学生编号=B.学生编号
------解决方案--------------------
取不同的別名就可以了
------解决方案--------------------
select 年级,(select 名称 from 学生表 where 学生编号=x.学生编号),(select 名称 from 学生表 where 学生编号=x.学生编号) from 学校成绩汇总表 as x
------解决方案--------------------
select * from T2
left join T1 as A on T2.数学第一名的学生编号=A.学生编号
left join T1 as B on T2.语文第一名学生编号=B.学生编号
------解决方案--------------------
Select * from 学校成绩汇总表 as t
Left join 学生表 as A on T.数学第一名的学生编号=A.学生编号
Left join 学生表 as B on T.语文第一名学生编号=B.学生编号