第六章连接和分组查询

简介: 第六章连接和分组查询

第六章连接和分组查询

一、分组查询:

1.语法:select 列名 from 表名 where 条件 group by 分组的列 order by 列名 排序方式(asc/desc)

2.多列分组的语法:

select 列名1,列名2 from 表名 where 条件 group by 分组的列1,分组的列2 order by 列名

3.分组的注意事项:

(1)除聚合函数所在的列之外,from前面的列必须和group by 子句的列一一对应。

(2)order by 后面可以跟聚合函数,eg:order by sum(result) desc,按照总分数降序显示

4.分组筛选:

(1)having:先分组在筛选

(2)语法:

select 列名 from 表名 group by 列名

having 筛选条件

order by 排序方式

(3)查询顺序:

where -->group by -->order by

(4)查询的语法:

select 列名 from 表名 where 条件 group by 分组列 having 筛选列 order by 排序列

二、连接查询:

1.内联接:

语法:select 列名 from 表名1,表名2

select 列名 from 表名1 join 表名2 on 表名1.外键 = 表名2.外键

2.外联接:

需要显示哪个表的全部信息,然后观察这个表在左边还是右边,左边的话用左外链接,右边的话用右外连接

(1)左外联接

查询左表的全部数据

select 列名 from 表1 left join 表2 on 表1.外键=表2.外键

(2)右外联接

查询右表的全部数据

select 列名 from 表1 right join 表2 on 表1.外键=表2.外键

相关文章
|
5月前
|
关系型数据库 MySQL 数据库
MySQL数据库——多表查询(1)-多表关系(一对多、多对对多、一对一)、多表查询概述(概念、笛卡尔积、分类)
MySQL数据库——多表查询(1)-多表关系(一对多、多对对多、一对一)、多表查询概述(概念、笛卡尔积、分类)
118 0
|
6月前
|
SQL 数据可视化 关系型数据库
【MySQL-11】多表查询全解-【多表关系/内外自连接/子查询/多表查询案例链接】(可cv代码&案例演示)
【MySQL-11】多表查询全解-【多表关系/内外自连接/子查询/多表查询案例链接】(可cv代码&案例演示)
|
6月前
|
关系型数据库 MySQL
Mysql基础第十六天,分组数据
Mysql基础第十六天,分组数据
31 0
|
SQL 数据库
数据库上机实验3 连接查询和分组查询
数据库上机实验3 连接查询和分组查询
211 0
|
SQL 存储 关系型数据库
Mysql数据库基础第八章:窗口函数和公用表表达式(CTE)
# 1.窗口函数 MySQL从8.0版本开始支持窗口函数。窗口函数的作用类似于在查询中对数据进行分组,不同的是,分组操作会把分组的结果聚合成一条记录,而窗口函数是将结果置于每一条数据记录中。
Mysql数据库基础第八章:窗口函数和公用表表达式(CTE)
SQl课程实验(外连接,聚集函数,分组,行数限制)
文章目录 1.看完这篇文章你会得到什么 2.实验内容 1. 查询没有任何学生选学的课程编号和课程名称及学分 2. 查询每个班学生入学成绩最高分和最低分的差距,列名为“最大分差” 3. 查询至少选修了三门课程的学生编号 4.统计各个班级男生和女生的平均年龄及人数。 5.查询至少被两名学生选修的课程名称 6. 查询计算机学院至少有两门课的成绩在80以上的女学生学号、姓名和出生日期及其期末成绩的最高分 7. 查询所选课程期末成绩平均分在85分以上的“女”学生学号、姓名、期末成绩平均分 8. 查询“马克思主义基本原理”期末成绩排在6-10名的学生学号、姓名和期末成绩
117 0
SQl课程实验(外连接,聚集函数,分组,行数限制)
|
SQL 存储 关系型数据库
Mysql数据库基础第二章:(五)分组查询
在做筛选条件时,如果是在分组前删选,则用where如果是在分组后筛选,则用having。
|
SQL 关系型数据库 MySQL
MySQL基础-多表查询概述
多表查询就是指从多张表中查询数据。
81 0
|
关系型数据库 MySQL 数据库
MySQL数据库:第七章:分组查询
MySQL数据库:第七章:分组查询
|
关系型数据库 MySQL 数据库
MySQL数据库:第六章:分组函数/聚合函数
MySQL数据库:第六章:分组函数/聚合函数