0
点赞
收藏
分享

微信扫一扫

MySQL中的查询语法(二)

星巢文化 2022-01-12 阅读 47

1.聚合查询

MySql中提供了内置的'函数',可以帮助计算目标行数,平均值等。

查询student表中的记录数。

SELECT COUNT(*) FROM student;

除count()外还提供了其他聚合函数。

2.分组查询

分组查询的原理:先对数据进行分组,在对分组后的数据进行汇总,分组查询通常用于配合聚合函数,达到分类汇总统计信息的目的。而分类汇总的本质实际上就是先将数组进行分组,分组后相同类别的信息会聚在一起,然后通过需求进行计算。

查询各个班的男生的平均身高

SELECT avg(age) num FROM student GROUP BY class_num;

查询各个班的人数

SELECT count(*) FROM student GROUP BY class_num;

3.多表查询

SELECT查询不但可以从一张表查询数据,还可以从多张表同时查询数据。查询多张表的语法是:

SELECT * FROM <表1> <表2>;

同时查询student,和sc两张表

SELECT * FROM student,scoure;

查询多个表中的特定列,比如student表当中的name和age,以及source表当中的cno列。

SELECT s.NAME, s.age, c.cno FROM student s, scoure c;

4.嵌套查询

一般在子查询中,程序先运行在嵌套在最内层的语句,再运行外层。因此在写子查询语句时,可以先测试下内层的子查询语句是否输出了想要的内容,再一层层往外测试,增加子查询正确率。否则多层的嵌套使语句可读性很低。

嵌套查询最侧产生的是一个新的表

找到所有选选择课程号为 数学 的同学的名称

SELECT t2.name FROM
(select t1.name,scoure.gradeName from 
(SELECT student.name,relationship.cno FROM student 
    INNER JOIN relationship on student.sno = relationship.sno) t1
     INNER JOIN scoure  on t1.cno = scoure.cno) t2
 where gradeName = '数学';
举报

相关推荐

0 条评论