sql高手请进!一个困扰我很长时间的sql语句的写法......

stronggrass 2002-10-26 08:50:04
我很长时间以来一直只想到了一下一种方法写sql语句。

问题描述:有一个表(表一)中存的是人员的基础数据,字段有“code(人员编码)”、“name(人员名称)”等。在另一个表(表二)中,有几个关于人员的字段,存的都是编码,如“student”、"teacher"等。我想写一个sql语句,根据表二中的人员编码同时选出几个人员的名称,除了下面我写的还有没有更高效的方法?

各位大虾帮帮我,谢谢!

我写的sql:(其思想为先建立一个表,列出code,再把该表join表一,从join后的表中再选,有多少code,join多少次表一,效率太差)
select 学生,d.name from (
select a.name as 学生,b.teacher as 老师 from 表一 a inner join
表二 b on a.code = b.student
) c
inner join 表一 d on c.teacher=d.code
...全文
35 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
supsuccess 2002-10-26
  • 打赏
  • 举报
回复
点 帖子标题 后面的“管理”,输入密码,分配分数,再给分就OK了
stronggrass 2002-10-26
  • 打赏
  • 举报
回复
我可以节贴吗?怎样给分?
supsuccess 2002-10-26
  • 打赏
  • 举报
回复
:)
stronggrass 2002-10-26
  • 打赏
  • 举报
回复
Thank you for your help!
I appreciate that very very much!
supsuccess 2002-10-26
  • 打赏
  • 举报
回复
select t1.name as 学生,t3.name as 老师
from tab2 t2 join tab1 t1 on t1.code=t2.student
join tab1 t3 on t3.code=t2.teacher
sdav 2002-10-26
  • 打赏
  • 举报
回复
SELECT a.student,b.name as studname,a.teacher,c.name as teachername
FROM 表二 a,表一 b,表一 c WHERE a.student = b.code AND a.teacher = c.code
同一楼上的老兄所说的,我想也没有其他的更好的东西了!
qqqdong 2002-10-26
  • 打赏
  • 举报
回复
SELECT a.student,b.name as studname,a.teacher,c.name as teachername
FROM 表二 a,表一 b,表一 c WHERE a.student = b.code AND a.teacher = c.code

34,591

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧