数据查询(3)(2)-----------基于学生信息数据库stusys

/*/*/*接上一篇*/*/*/

3.5 排序查询和限制查询结果的数量

1.排序查询

order by子句可用于对查询结果进行排序。

语法格式:[ order by { <排序表达式> [ asc | desc ] } [,...n }

其中,排序表达式可以是列名、表达式或一个正整数;asc表示升序排序,为系统默认排序方式;desc为降序排序。

提示:

排序操作可对数值、日期、字符三种数据类型使用,order by子句只能出现在整个select语句最后。

将计算机专业的学生按出生时间进行降序排列。

2.限制查询结果的数量

语法格式:limit { [offset,] row_count | row_count OFFSET offset  }

说明:

(1)offest:位置偏移量,只是从哪一行开始显示,第1行的位置偏移量是0,第2行的位置偏移量           是1,以此类推,如果不指定位置偏移量,系统会从表中第1行开始显示。

(2)row_count:返回的行数。

(3)limit子句有两种语法格式,例如,显示表中第2~4行,可写为“limit 1.3”,也可以写为“limit 3             offset 1”。

查询成绩表中成绩后3位学生的学号、专业和学分。

源代码:

select count(*) as 总人数
	from student;

select count(*) as 总人数
	from student
	where speciality = '通信';

select sum(tc) as 总学分
	from student;

select sum(tc) as 总学分
	from student
	where sno = '191001' or sno = '196002';

select avg(tc)  as 平均学分
	from student;

select min(tc) as 最低分
	from student;

select sno as 学生号,max(tc) as 最高分,min(tc) as 最低分
	from student
	where not tc is null
	group by sno;

select sno as 学号,sname as 姓名,tc as 学分
	from student
	group by sno
	having tc>50;

select *
	from student
	where speciality = '计算机'
	order by sbirthday desc;

select sno,speciality,tc
	from student
	order by tc
	limit 3 offset 0;

select sno,speciality,tc
	from student
	order by tc
	limit 0,3;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值