SQL语句
DML数据管理语言 增删改
新增
指定列添加数据
自动递增列可以不指定
自动递增列不会回撤,不会补齐,从该列最大值递增
not null列必须要指定数据
可以不指定列,但是需要将全部列指定数据
删除 delete
修改/编辑 update,设置多个项要用 ,
清空表
删除每一行数据
清空表,性能更快一些
查询 MQL
now()搜索的是当前时间
查询表格
指定列名查询
可以使用*代替所有的列
使用as 指定别名 列 方法结果 表 视图
where指定条件语句
对于null值判断时,不能用<>=,要用is null和is not null
<=>也可以表示is null
多条件
and和or
in/not in
between and
模糊查询
%任意个数任意字符
_有且只有一个字符
是否存在 exists
exists内的搜索存在时,将返回前面的搜索
any/all
排序 order by
正序 asc 倒序 desc
拼接(合并)查询结果(列数必须相同,类型可以不相同)
union会将重复的结果去除
union all不会去重
distinct 对整个查询结果去重
limit部分查询
limit count
limit start,count
case when then
分组 聚合函数 将多个数据聚合成一个数据的函数
最大值
最小值
平均数
求和
个数
group by 分组查询
havinig 分组筛选 对分组之后的数据再筛选
连接查询
as为列名起别名
外连接 左外连接 left join
右外连接 right join
全外连接 full join
mysql不支持全外连接full join
左连接以左表为主表,会显示所有的数据
右表为附表,只会显示和主表有关系的数据
右连接相反
内连接 inner join 也可以写为join
只显示有对应关系的数据
交叉连接cross join
子查询
把子查询当作表进行查询