无机肥料有哪些:求助一个关于二级vf的问题

来源:百度文库 编辑:高考问答 时间:2024/04/29 21:41:44
请问各位大侠在vf中,比如有两个表学生和成绩,想问一下select学生.*,成绩.分数 from 学生,成绩 where 学生.学号=成绩.学号 和select学生.*,成绩.分数 from 学生 inner join 成绩 on 学生.学号=成绩.学号 有什麽不同啊 什麽情况下该用inner join 将两个表连接啊。谢谢各位,见笑了。

据我个人的想法, 有以下几点
1. SQL实现目标的路径不一样, 你可以采用多种方式实现同样的功能, INNOR JOIN和WHERE在联接两个表的时候就上面的例子来说基本相同.

2. 但有个明显的区别是, INNER JOIN的效率可能比WHERE高, 但灵活性不如WHERE, 比如说WHERE A.ID+2=B.ID是可以的, 但INNER JOIN就不可以. 这就是通常不同命令在实现途径上的差异及导致的效率和灵活性的差异.

3. 可能还有其它一些不同, 如INNER JOIN通常对多于两个表进行操作, 但WHERE不常这样使用.

连接两个数据表的用法:
FROM Member INNER JOIN MemberSort ON Member.MemberSort=MemberSort.MemberSort
语法格式可以概括为:
FROM 表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号

连接三个数据表的用法:
FROM (Member INNER JOIN MemberSort ON Member.MemberSort=MemberSort.MemberSort) INNER JOIN MemberLevel ON Member.MemberLevel=MemberLevel.MemberLevel
语法格式可以概括为:
FROM (表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号) INNER JOIN 表3 ON 表1.字段号=表3.字段号

连接四个数据表的用法:
FROM ((Member INNER JOIN MemberSort ON Member.MemberSort=MemberSort.MemberSort) INNER JOIN MemberLevel ON Member.MemberLevel=MemberLevel.MemberLevel) INNER JOIN MemberIdentity ON Member.MemberIdentity=MemberIdentity.MemberIdentity
语法格式可以概括为:
FROM ((表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号) INNER JOIN 表3 ON 表1.字段号=表3.字段号) INNER JOIN 表4 ON Member.字段号=表4.字段号

连接五个数据表的用法:
FROM (((Member INNER JOIN MemberSort ON Member.MemberSort=MemberSort.MemberSort) INNER JOIN MemberLevel ON Member.MemberLevel=MemberLevel.MemberLevel) INNER JOIN MemberIdentity ON Member.MemberIdentity=MemberIdentity.MemberIdentity) INNER JOIN Wedlock ON Member.Wedlock=Wedlock.Wedlock
语法格式可以概括为:
FROM (((表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号) INNER JOIN 表3 ON 表1.字段号=表3.字段号) INNER JOIN 表4 ON Member.字段号=表4.字段号) INNER JOIN 表5 ON Member.字段号=表5.字段号

http://blog.csdn.net/fcc_ecjtu/archive/2006/02/18/601721.aspx