MySQL-课程介绍




MySQL-概述
概述-数据模型


SQL简介


MySQL-DDL

-数据库操作





MySQL-DDL-图形化工具


DDL-表结构操作
-创建



-数据类型


tinyint默认为有符号的,想要无符号的一般要在后面加上unsigned例如tinyint unsigned


由于变长字符串varchar要根据实际长度存储,多了一步判断长度,所以性能比char低
像电话号这种固定长度的就可以使用char(11)
像名字这种长度不固定的就可以用varchar(20)
date只有年月日,datetime有年月日和时分秒
创建-案例
-查询&修改&删除


show tables只查询到了表名
desc 表名查询到了表的结构

show create table 表名查询到了表的设定语句


选中表 ctrl+b可以在图形化界面中查看这个表

MySQL-DML

-添加数据insert

指定字段添加数据,是指挑选几个属性给一组元素赋值



这就是为所有属性中的几个属性添加几组数据,每组数据之间要用逗号隔开

这个相当于给整表赋值

id是primary key元素不可以重复,又是自增元素,所以可以写成null,让系统自增

在id设置为null的情况下,重复运行相同的语句可以重复添加相同的数据

在指定字段添加元素时,空着的元素会变成null

在全部字段添加数据的时候不能不写数据,否则会报错



-修改数据update


不加where语句的时候会默认把全表都改了


-删除数据delete


查询和存储的写法是相反的,存储(insert update delete)都是要先找到表在哪里才能存储
查询是要先确定查询什么才能能到表里查
MySQL-DQL
-基本查询


去除重复记录,如果有重复的自动去掉
获取表中的几列元素
字段就是属性,也就是列

获取整表


要查询的字段之间要用逗号隔开

两种方法都可以,但是实际开发中要用第一种,因为第二种性能低,而且不直观
起别名

起别名时,别名中有空格的要用单引号引起来

去除重复

如果用普通方法查的话,会得到一堆重复的内容
这时候要获得不重复的内容,就要用distinct



-条件查询---统计横行where


判断有没有用is null(没有)is not null(有)




is不能用来判断是否,is后面只能加null或者是not null
判断相等=,不等!= <>,大于小于要用>= > <= <

不等于 != <>


占位符
判断名字有几位用_判断时不知道名字有几位用%


in( , , , ) 判断数据是否是括号内的值之一









-聚合函数---统计竖列count()







count统计
统计非null的值

min求最小值

max求最大值

字符串也是可以比较的
avg统计平均值

字符串无法求平均值
sum求和

字符串也无法求和
-分组查询group by



where后面不能使用count函数

要对count函数做条件判断要用having


先执行where,再执行group by,最后再执行having
where筛选出去的元素不会执行分组
-排序查询order by


-分页查询limit ,


limit限制每页展示的数据个数,防止加载数据时间过长以及用户使用体验不好


第一个数字表示索引,从索引0开始是指从第一个数据开始,从索引1开始是指从第二个数据开始
第二个数字表示展示个数


-案例





