前言:
找了一下午不知道要用那个软件来存备这些语法,使用了博客,用起来不理想。最后找到知乎,还ok :)
那就使用这个来存储吧,以后方便查找j自己的学习笔记。
对mysql中数据的操作:
一.mysql中向表中添加数据的语法
在这里我介绍两种values关键字和select关键字:
1)insert into 表名 (列1,列2,......)
values(列1值,列2值,......) ; #这里表示一次性想表中加入一条数据,注意
特定列与值的两两对应。
2)insert into 表名 (列1,列2,......)
values(列1值,列2值,......) , #这里表示一次性向表中加入多条数据。
(列1值,列2值,......) ,
...
(列1值,列2值,......) ;
3)insert into 表名 (列1,列2,......)
select 列1值,列2值,...... UNION #这里表示一次性向表中加入多条数据。
select 列1值,列2值,...... UNION
...
select 列1值,列2值,...... ;
细节:注意列与列,值与值逗号相连!!! 完整命令以分号结尾。
二.mysql中向表中删除数据的语法
有两个语法可以删除数据,delete关键字和truncate关键字,不过他们有很大的区别
delete语句循环表中所有记录,满足条件的就删除。而truncate是对表的对象的操作,直接一次性复位清空所有数据,所以自增长会被初始成1,而delete不会。
1)delete from 表名
where 列条筛;
2)truncate table 表名;
三.mysql中向表中修改数据的语法
update 表名
set 列1=新值,列2=新值,...
where 列条筛 ; #表示对满足列条件的记录进行列的更新
四.mysql中向表中查询数据的语法
这里我习惯性以分级的方式来记忆
1级:基础查询
1)select * rom 表名 ;
2)select 列1,列2,列3,...
from 表名
where 列条筛
order by 列名 ASC / DESC ;
3) as关键字
4) select 列1,列2,列3,...
from 表名
where 列 is (not) null ;
5) limit关键字
select 列1,列2,列3,...
from 表名
where 列条筛
order by 列名 ASC / DESC
limit 忽略行数,获取行数 ;
2级:模糊查询和聚合函数
1)通配符和 like 关键字的使用
%,_,[ ],[^ ]
2) Between 值1And 值2 #值1必须小于值2
3)(not) in (' ',' ',' ',' ',...)
4)MAX( ),MIN( ),SUM( ),AVG( ) #其中只能放数值类型参数
COUNT( ) #对*不忽略空行,对精确列忽略
3级:分组查询和内连接
#注:在分组查询里面只能出现两个东西:被分组的列,为每个分组返回一个值的表达
式如聚合函数
1)select 被分组的列名,聚函()
from 表名
where 列条筛
group by 被分组的列名
having 聚函筛 ;
2)select S.列1,S.列2,R.列3,S.列4
from 表名 as S
inner join 表名 as R on S.主键=R.外键
where 列条筛;
#查询中的七大关键字:select...
from...
where...
group by...
having...
order by...
limit...
以上!