数据库查询练习-简单查询练习及笔记(2)

在这里插入图片描述

数据库查询练习-简单查询练习及笔记(2)

1 分组计算平均成绩

查询每门课的平均成绩;

select avg(degree) from score where cno='3-105';
#select avg(要求平均分的字段名称) from 表名 where 根据那个字段求值='字段值';
/*
mysql> select avg(degree) from score where cno='3-105';
+-------------+
| avg(degree) |
+-------------+
| 85.3333     |
+-------------+
1 row in set (0.02 sec)
*/

如果数据量大 ,一次一次写比较麻烦,所以用到分组;

select  avg  (degree) from score group by cno;
#select  avg  (要求平均分的字段名称) from 表名 group by 根据那个字段来求;
/*
mysql> select  avg  (degree) from score group by cno;
+---------------+
| avg  (degree) |
+---------------+
| 85.3333       |
| 76.3333       |
| 81.6667       |
+---------------+
3 rows in set (0.02 sec)

mysql> select cno, avg(degree) from score group by cno;
+-------+-------------+
| cno   | avg(degree) |
+-------+-------------+
| 3-105 | 85.3333     |
| 3-245 | 76.3333     |
| 6-166 | 81.6667     |
+-------+-------------+
3 rows in set (0.02 sec)
*/
2 分组条件与模糊查询

查询 score 表中至少有 2 名学生选修,并以 3 开头的课程的平均分数。

select cno from score group by cno having count(*)>=2 and  cno like '3%';
#select 要查询的字段 from 在那张表中查询 group by 以哪个字段来分组 having count(*)>=条件 and  要模糊查询的字段 like '模糊查询的字符%';
#    %表示模糊查询通配符;
/*
mysql> select cno from score group by cno having count(*)>=2 and  cno like '3%';
+-------+
| cno   |
+-------+
| 3-105 |
| 3-245 |
+-------+
2 rows in set (0.03 sec)
*/
3 模糊查询

通配符:

_表示任意一个字母 定长

%表示多个字母 不定长

select * from  student where sbirthday like  '1974%';
#select 那一个字段*表示所有 from  查那个表 where 模糊查询的字段 like  '模糊查询的值%';
/*
mysql> select * from  student where sbirthday like  '1974%';
+-----+--------+------+---------------------+--------+
| sno | sname  | ssex | sbirthday           | sclass |
+-----+--------+------+---------------------+--------+
| 106 | 陆军   | 男   | 1974-06-03 00:00:00 | 95031  |
| 109 | 赵铁柱 | 男   | 1974-06-03 00:00:00 | 95031  |
+-----+--------+------+---------------------+--------+
2 rows in set (0.04 sec)
*/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Oracle第八章的课堂笔记中,我们学习了集合运算的概念和用法。集合运算是一种对数据库中的数据进行操作和查询的技术,它可以将多个查询的结果进行合并、交叉和排除等操作。 首先,我们学习了并集运算(UNION)。并集运算可以将两个或多个查询的结果合并为一个结果集,它会去除重复的行,并按照查询语句的顺序进行排序。我们需要注意的是,并集运算中要求两个查询的列数和类型必须匹配。 接着,我们学习了交集运算(INTERSECT)。交集运算可以将两个查询的结果中的共同部分提取出来,生成一个新的结果集。交集运算同样要求两个查询的列数和类型必须匹配,而且结果集中不会出现重复的行。 然后,我们学习了差集运算(MINUS)。差集运算可以从一个查询的结果中排除另一个查询的结果,生成一个新的结果集。差集运算同样要求两个查询的列数和类型必须匹配,并且结果集中不会出现重复的行。 最后,我们练习使用这些集合运算符来解决实际问题。通过编写SQL查询语句,我们可以根据给定的条件和要求,使用并集、交集和差集等运算符来获取我们需要的结果。 总之,Oracle第八章的集合运算课堂笔记练习让我们了解了集合运算的概念和用法,以及如何使用这些运算符来操作和查询数据库中的数据。这些知识对我们在实际应用中更高效地处理和分析数据具有重要意义。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值