您的位置:首页 > 数据库

SQL 查询数据(一.单表查询) 实例_(学生,课程表,选修表)

2013-04-22 23:32 309 查看
--去除重复的值(distinct)
select distinct 学号
from 选修
--查询满足条件的记录(like(=)及not like(!=或<>))
select *
from 课程
where 课程名 like '计算机%'
--确认集合(in(between...and...))
select *
from 课程
where 课程名 in('计算机软件','计算机技术')
--空值的查询
select *
from 学生
where 备注 is null
--排序(默认是升序,如果要降序则Desc)
select *
from 学生
order by 姓名,班级 desc
--查询表中前N条数据(top,percent)
select top 3 *
from 学生
select top 80 percent *
from 学生
--常用聚合函数(count,sum,avg,max,min)
select COUNT(distinct 学号) as 总人数,sum(成绩) as 总成绩,AVG(成绩) as 平均成绩,
MAX(成绩) as 最高分,MIN(成绩) as 最低分
from 选修

--对查询结果进行分组(group by)或者进一步筛选(having)
--下面语句,先对查询结果按课程号的值分组,所有具体相同的课程号的记录为一组,然后对每一组作用聚合函数,
--如果再添加having条件对这些组进行筛选,最终只输出满足指定条件的组
select COUNT(学号) as 总人数,sum(成绩) as 总成绩,AVG(成绩) as 平均成绩,
MAX(成绩) as 最高分,MIN(成绩) as 最低分,课程号
from 选修
group by 课程号
having COUNT(*)>=2


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: