连表查询的简单例子(转)


   如下为一个例子。

       表一。表名称tb1.其中studentID为主索引。外健。

studentID

studentName

studentGender

studntAge

3102079014

刘永相

25

3102079015

赵某某

23

       表二。表名称tb2.其中teacherID为主索引。外健。

teacherID

teacherName

teacherManageStudent

teacherMemo

3645221

刘刚

3102079014

备注无

3645222

成昆

3102079015

备注无

       现在有一个查询,需要知道某一个老师管理的学生的名字。由表二可以知道老师刘刚管理的是3102079014这个学生,又由表1知道3102079014这个学生的名称为刘永相。怎么写这个查询语句呢?

       如下:

       sql=”select tb2.teacherName,tb1.studentName from tb2,tb1 where tb2.teacherManageStuent=tb1.studentID

       出来的结果为:

teacherName

studentName

刘刚

刘永相

       可能读者马上就会产生一个疑问,在表2里头。teacherID作为索引,必然只有唯一的一个ID记录。那么我怎么来管理所有的学生呢?

       由两个处理的方法。1:在teacherManageStudent字段里头把所有的学生的ID都录进去。中间用!或者其他符号表示出来,在后面的sql生成的时候,用一个循环来不断地把所有的学生得ID都写入sql.2tb2不要建成如上的形式,在tb2里放置老师的基本信息。另外一个新表里头放置的老师的ID和老师管理学ID的记录,如下:

新表:表名称tb3

teacherID

teacherManageStudent

3645221

3102079014

其中表2变成了

teacherID

teacherName

teacherMemo

3645221

刘刚

备注无

3645222

成昆



posted @ 2007-12-28 11:32 Have a try 阅读(115) 评论(2)  编辑 收藏 所属分类: 技术专题

  回复  引用  查看    
#1楼  2008-01-03 17:28 | 张玉丰      
呵呵,现在咱们一般都用方法2吧。asp用方法一多一点吧,特别是全选删除的时候。
  回复  引用  查看    
#2楼  2008-02-19 21:15 | *月明*      
哈哈,有点明白!

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2008-02-25 17:42 编辑过


相关链接: