mysql 基础语法3
代码:
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相关推荐
- MYSQL基础语法的使用
喜欢的朋友可以关注下,粉丝也缺. MYSQL介绍 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之 ...
- MySQL基础语法大全(尚硅谷)
文章目录 一.为什么要学数据库 二.数据库的相关概念 DBMS DB SQL 数据库的好处 数据库相关概念 三.数据库存储数据的特点 四.初识MySQL 1.MySQL产品的介绍和安装 2.MySQL ...
- MySql基础语法-java学习
MySQL 目录结构 MySQL 的目录结构 描述 bin<目录> 所有 mysql 的可执行文件,如:mysql.exe MySQLInstanceConfig.exe 数据库的配置向导 ...
- MySQL基础语法与JDBC
文章目录 前言 (一)什么是SQL (二)什么是MySQL (三)MySQL的体系结构 ①连接层 ②服务层 ③可插拔存储引擎层 ④存储层 (四)MySQL的启动.停止.连接 一.基础知识 (一)基本术 ...
- MySQL基础语法总结
MySQL基本语法 注:使用到的数据库表在文章末尾 文章目录 MySQL基本语法 基础查询 条件查询 排序查询 常见函数 分组查询 连接查询 基础查询补充 子查询 分页查询 联合查询 查询总结 插入 ...
- Mysql 基础语法应用
第一章 MySQL基础介绍 1.数据库的基本概念数据库: DataBase 简称 DB作用: 用于永久性存储和管理数据的仓库 2.常见的数据库A.MySQL 简单的免费的数据库 ---> 现在学 ...
- MySQL基础语法(详细版)
文章目录 1.数据库的介绍 1.1 数据库概念 1.1.1 数据的存储方式 1.1.2 什么是数据库 2.数据库的安装与卸载 2.1数据库的安装 2.2数据库的卸载 3.数据库服务的启动与登录 3.1 ...
- mysql基础语法之(全文索引)
1.概要 InnoDB引擎对FULLTEXT索引的支持是MySQL5.6新引入的特性,之前只有MyISAM引擎支持FULLTEXT索引.对于FULLTEXT索引的内容可以使用MATCH()-AGAIN ...
- Mysql 基础语法
数据库基本语法: DDL:Data Defination Lanuage: 数据定义语言CREATE, ALTER, DROP DML:Data Manapulate Language: 数据操作语言 ...
- java:mysql基础语法
一,基础操作 1,创建表 CREATE TABLE `customers` ( //设置customers_id为整数并为自增长`customers_id` INT(11) PRIMARY KEY A ...
最新文章
- 苹果7支持快充吗_支持苹果20W+华为22.5W快充,倍思发布迷你数显快充移动电源...
- java描述常用的集合类_Java常用的三大集合类
- Oracle中查询、禁用、启用、删除表外键
- C# 中xml数组的序列和反序列化方法
- MySQL优化(一):表结构优化
- grubbs检测c语言,Grubbs算法检测离群值
- android如何调用接口方法,在Android中访问WebService接口的方法
- 鱼塘钓鱼(信息学奥赛一本通-T1373)
- centos7.2 开发 部署 .net core
- 在.h文件和.m文件里使用import指令有何区别?
- python编程音乐播放器_python 开发在线音乐播放器-简易版
- php中if函数的,【后端开发】php中if函数用法
- VM15.5安装XP系统
- winhex 19.8 注册码生成工具(keygen)
- HTML 两种对密码加密的方法
- 词嵌入来龙去脉 word embedding、word2vec
- 可控制导航下拉方向的jQuery下拉菜单代码
- 2019年9月8日秋季PAT甲级题解A1163(7-4)Dijkstra Sequence
- STM32关于使用定时器来实现串口通信的整活实验
- 华为面试手撕真题【最长不重复子串】
热门文章
- Hie with the Pie(旅行商问题)
- Adguard Home最低DNS处理时间配置
- Python开发资源速查表
- 天翼云监控客户pc端及手机端下载安装教程
- 计算机工程与应用 卷号,计算机专业毕业设计软件设计类论文各章节标题与格式规范...
- 美团:踩雷好几年,才总结出的数据治理避坑攻略
- HTTP协议--概述
- 动漫美少女生成神器、猫的门禁...2019年十七大最佳机器学习项目 |年度盘点①...
- wifi的几种加密方式
- igraph基本用法