计算机应用基础知识点:单表查询与多表查询

来源:百度文库 编辑:九乡新闻网 时间:2024/04/30 20:40:24
 三个表表结构:students(sid,studentID,sname,sclass,ssex,semail,saddress)courseid(courseid,cname)score(scoreid,courseid,studentid,score) 单表查询复习:select  [top 数字或百分比]   字段列表
from 表
where 条件
order by 字段列表 asc/desc练习三个:--查询成绩表中课程号为2,成绩在70~99之间的记录,按成绩升序排序
--查询学生表中地址是(南京、北京、东京、西安)的记录
--查询成绩表课程号为3的前3名成绩的记录按成绩降序排列 select 字段列表,聚合函数--这里的字段列表一定要与group by 的字段列表一致
from 表
group by 字段列表  
having 条件 --通过成绩表查出课程号及该门课平均成绩
--查询每个同学每门课的平均成绩
--查询成绩表中参加课程号为2的学生人数(distinct的使用,去除重考同学的计数)
--查询成绩表中课程平均成绩超过80分的学号、课程号、平均成绩记录(存在补考成绩) 函数的使用复习(len,left,right)格式:len(字段),left(字段,从左边取的位数),right(字段,从右边取的位数)
--给学生表的身份证号cardid建立一个约束字符必须是15或者是18位
--根据学生表的学号查询入学年份、姓名、班级、两位数的座号记录(如学号为20100123的这四项记录) 内连接查询复习

select A.字段列表,B.字段列表
from 表1 as A
inner join 表2 as B
on 两个表的主外键相等的条件另一种查询方法
select A.字段列表,B.字段列表
from 表1 as A, 表2 as B
where 连接条件 练习:--查询学生姓名、班级、课程号、成绩记录
--要查询学生姓名、班级、课程名、成绩所有记录

左外连接
主要考虑左表到底用两个表的哪个
--查询所有同学成绩(姓名、班级、成绩)没有参加考试的同学成绩以空值表示
--查询所有课程成绩情况 三个表连接查询--要查询学生姓名、班级、课程名、成绩所有记录