专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > VFP

多个表 inner join 的执行有关问题

发布时间:2010-05-24 21:53:35 文章来源:www.iduyao.cn 采编人员:星星草
多个表 inner join 的执行问题
&&将以下内容复制到.prg文件中,执行,就会发现问题

set   safety   off
&&创建   student表
create   table   student   (学号   c(3),姓名   c(6))
insert   into     student   values( "001 ", "aaaa ")
insert   into     student   values( "002 ", "bbbb ")
insert   into     student   values( "003 ", "cccc ")

&&创建   course表
create   table   course   (课程号   c(3),课程名   c(6))
insert   into     course   values( "00A ", "KC01 ")
insert   into     course   values( "00B ", "KC02 ")
insert   into     course   values( "00C ", "KC03 ")

&&创建   score1表
create   table   score1   (学号   c(3),课程号   c(3),成绩   n(3))
insert   into     score1   values( "001 ", "00A ",89)
insert   into     score1   values( "001 ", "00B ",79)
insert   into     score1   values( "001 ", "00C ",69)
insert   into     score1   values( "002 ", "00A ",83)
insert   into     score1   values( "002 ", "00B ",73)
insert   into     score1   values( "002 ", "00C ",63)
insert   into     score1   values( "003 ", "00A ",80)
insert   into     score1   values( "003 ", "00B ",70)


&&sql1,正常
SELECT   *   FROM   score1   ,   course   ,   student     WHERE   score1.学号   =   student.学号     AND   score1.课程号   =   course.课程号
&&sql2
SELECT   *   FROM     course       INNER   JOIN   score1       INNER   JOIN   student       ON   score1.学号   =   student.学号             ON     score1.课程号   =   course.课程号
&&sql3,姓名字段有问题
SELECT   *   FROM     score1       INNER   JOIN   course       INNER   JOIN   student       ON     score1.学号   =   student.学号           ON     score1.课程号   =   course.课程号
&&sql4,课程名字段有问题
SELECT   *   FROM     score1       INNER   JOIN   course       INNER   JOIN   student       ON     score1.课程号   =   course.课程号     ON     score1.学号   =   student.学号        



------解决方案--------------------
改成这样:

&&sql2
SELECT * FROM course INNER JOIN score1 ON score1.学号 = student.学号 INNER JOIN student ON score1.课程号 = course.课程号

&&sql3
SELECT * FROM score1 INNER JOIN course ON score1.学号 = student.学号 INNER JOIN student ON score1.课程号 = course.课程号

&&sql4
SELECT * FROM score1 INNER JOIN course ON score1.课程号 = course.课程号 INNER JOIN student ON score1.学号 = student.学号
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: