代码:
Customers表格:

Orders表格:

内连接:
内连接是在交叉连接的基础上
只列出连接表中与连接条件相匹配的数据行,匹配不上的记录不会被列出。

语法:

隐式语法:select *  from customers,orders where customers.id=orders.customer_id;
显式语法:select *  from customers as c inner join orders as o on c.id=o.customer_id;

外链接:
外链接是以一张表为基表,其他表信息进行拼接,如果有就拼接上,如果没有显示null; 外链接分为左外连接和右外连接。

左外连接: 以关键字左边的表格为基表进行拼接。

语法:

select * from customers as c left join orders as o on c.id=o.customer_id;

右外连接: 以关键字右边的表格为基表

语法:

select * from orders as o right join customer as c on c.id=o.customer_id;

子查询:包括嵌套子查询、相关子查询。

嵌套子查询:
内部查询的执行独立于外部查询,内部查询仅执行一次,执行完毕后将结果作为外部查询的条件使用(嵌套子查询中的子查询语句可以拿出来单独运行。)

例如:查询id为1的老师教过的学生。
select * from students where id in(select student_id from teacher_student where t_id=1);

相关子查询:
内部查询的执行依赖于外部查询的数据,外部查询每执行一次,内部查询也会执行一次。每一次都是外部查询先执行,取出外部查询表中的一个元组,将当前元组中的数据传递给内部查询,然后执行内部查询。根据内部查询执行的结果,判断当前元组是否满足外部查询中的where条件,若满足则当前元组是符合要求的记录,否则不符合要求。然后,外部查询继续取出下一个元组数据,执行上述的操作,直到全部元组均被处理完毕。

例如:每一科考试成绩大于平均分的学生的分数。
select * from score as a where a.score>(select avg(b.score) from score as b where a.cou_id=b.cou_id);

常用函数:
1、count():求满足列的条件的总的行数。
例如:统计一个班级的人数。
select count(id) from class one;

2、sum():求总和。
例如:求一个班的数学平均分。
select sum(math)/count(*) from student ;

3、avg():求平均数。
例如:求数学平均分
select avg(math) from student;

4、max()\min():求最大值,最小值。
例如:求数学成绩的最大值最小值。
select max(math),min(math) from student;

group by :分组
GROUP BY子句的真正作用在于与各种聚合函数配合使用。它用来对查询出来的数据进行分组。
分组的含义是:把该列具有相同值的多条记录当成一组记录处理,最后只输出一条记录。分组函数忽略空值。

例题:
create table t_order(id int primary key,product varchar(20),price float(8,2));
insert into t_order values(1,‘xiaomi’, 1000);
insert into t_order values(2,‘xiaomi’,1100);
insert into t_order values(3,‘huawei’,2200);
insert into t_order values(4,‘apple’,8200);

例如:
(1)对订单中每一类商品进行归类。
select product sum(price) from t_order group by product;
(2)查询商品总价格大于3000的商品。
select product ,sum(price) from t_order group by product having sum(price)>3000;

having \ where 的区别
①、where和having都是用来做条件限定的,
②、WHERE是在分组(group by)前进行条件过滤,
③、HAVING子句是在分组(group by)后进行条件过滤,
④、WHERE子句中不能使用聚合函数,HAVING子句可以使用聚合函数。
⑤、HAVING子句用来对分组后的结果再进行条件过滤
having sum(price)>2000 相当于 拿着 列名为sum(price)去查询。

mysql 基础语法3相关推荐

  1. MYSQL基础语法的使用

    喜欢的朋友可以关注下,粉丝也缺. MYSQL介绍 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之 ...

  2. MySQL基础语法大全(尚硅谷)

    文章目录 一.为什么要学数据库 二.数据库的相关概念 DBMS DB SQL 数据库的好处 数据库相关概念 三.数据库存储数据的特点 四.初识MySQL 1.MySQL产品的介绍和安装 2.MySQL ...

  3. MySql基础语法-java学习

    MySQL 目录结构 MySQL 的目录结构 描述 bin<目录> 所有 mysql 的可执行文件,如:mysql.exe MySQLInstanceConfig.exe 数据库的配置向导 ...

  4. MySQL基础语法与JDBC

    文章目录 前言 (一)什么是SQL (二)什么是MySQL (三)MySQL的体系结构 ①连接层 ②服务层 ③可插拔存储引擎层 ④存储层 (四)MySQL的启动.停止.连接 一.基础知识 (一)基本术 ...

  5. MySQL基础语法总结

    MySQL基本语法 注:使用到的数据库表在文章末尾 文章目录 MySQL基本语法 基础查询 条件查询 排序查询 常见函数 分组查询 连接查询 基础查询补充 子查询 分页查询 联合查询 查询总结 插入 ...

  6. Mysql 基础语法应用

    第一章 MySQL基础介绍 1.数据库的基本概念数据库: DataBase 简称 DB作用: 用于永久性存储和管理数据的仓库 2.常见的数据库A.MySQL 简单的免费的数据库 ---> 现在学 ...

  7. MySQL基础语法(详细版)

    文章目录 1.数据库的介绍 1.1 数据库概念 1.1.1 数据的存储方式 1.1.2 什么是数据库 2.数据库的安装与卸载 2.1数据库的安装 2.2数据库的卸载 3.数据库服务的启动与登录 3.1 ...

  8. mysql基础语法之(全文索引)

    1.概要 InnoDB引擎对FULLTEXT索引的支持是MySQL5.6新引入的特性,之前只有MyISAM引擎支持FULLTEXT索引.对于FULLTEXT索引的内容可以使用MATCH()-AGAIN ...

  9. Mysql 基础语法

    数据库基本语法: DDL:Data Defination Lanuage: 数据定义语言CREATE, ALTER, DROP DML:Data Manapulate Language: 数据操作语言 ...

  10. java:mysql基础语法

    一,基础操作 1,创建表 CREATE TABLE `customers` ( //设置customers_id为整数并为自增长`customers_id` INT(11) PRIMARY KEY A ...

最新文章

  1. 苹果7支持快充吗_支持苹果20W+华为22.5W快充,倍思发布迷你数显快充移动电源...
  2. java描述常用的集合类_Java常用的三大集合类
  3. Oracle中查询、禁用、启用、删除表外键
  4. C# 中xml数组的序列和反序列化方法
  5. MySQL优化(一):表结构优化
  6. grubbs检测c语言,Grubbs算法检测离群值
  7. android如何调用接口方法,在Android中访问WebService接口的方法
  8. 鱼塘钓鱼(信息学奥赛一本通-T1373)
  9. centos7.2 开发 部署 .net core
  10. 在.h文件和.m文件里使用import指令有何区别?
  11. python编程音乐播放器_python 开发在线音乐播放器-简易版
  12. php中if函数的,【后端开发】php中if函数用法
  13. VM15.5安装XP系统
  14. winhex 19.8 注册码生成工具(keygen)
  15. HTML 两种对密码加密的方法
  16. 词嵌入来龙去脉 word embedding、word2vec
  17. 可控制导航下拉方向的jQuery下拉菜单代码
  18. 2019年9月8日秋季PAT甲级题解A1163(7-4)Dijkstra Sequence
  19. STM32关于使用定时器来实现串口通信的整活实验
  20. 华为面试手撕真题【最长不重复子串】

热门文章

  1. Hie with the Pie(旅行商问题)
  2. Adguard Home最低DNS处理时间配置
  3. Python开发资源速查表
  4. 天翼云监控客户pc端及手机端下载安装教程
  5. 计算机工程与应用 卷号,计算机专业毕业设计软件设计类论文各章节标题与格式规范...
  6. 美团:踩雷好几年,才总结出的数据治理避坑攻略
  7. HTTP协议--概述
  8. 动漫美少女生成神器、猫的门禁...2019年十七大最佳机器学习项目 |年度盘点①...
  9. wifi的几种加密方式
  10. igraph基本用法