目录
- 数据表记录的插入
- 数据表记录的修改
- 数据表记录的删除
- 简单查询
数据表记录的插入
单条数据的插入
语法:insert into 表名(字段名列表)
values('','','',...,'');
执行效果如图:
解析: insert into 表名(),括号里面的字段名是你要插入数据的类型以及顺序,可以不写,但是注意插入数据的顺序问题,因为创建数据表时不同数据的限制条件不同,不给插入数据的字段名它就会默认为创建数据表的字段名顺序去解析插入的数据,就可能会出现问题,数据插入就会失败,如下图。
多条数据的插入
语法:insert into 表名(字段名列表)
values(值列表),
...
(值列表);
执行效果如图:
解析: MYSQL语句的结束是以';'结尾,所以在没有识别到';'之前,它会默认你的语句输入没有结束,只有‘;’出现时才表名语句结束,所以多条数据的插入也就是在最后一条数据的末尾跟上';'即可,每一条语句之间用','分隔,注意这些数据的插入类型以及顺序要一致。
数据表记录的修改
语法:update 表名
set 字段名 = ' '
(where条件表达式);
执行效果如图:
解析: 如果不加后面的where条件式,表示将表中的所有数据全部修改,加上where条件式,表示具体修改满足条件的数据,where条件式就像一个id,如果让你在一个地方找一个人,又不告诉你他的任何消息,就很难找,你只能每个人都去排除一遍,但是给你这个人的姓名,年龄等基本信息,是不是就好找很多了,where条件式就相当于一个引子,找到具体要修改的那条数据。
数据表记录的删除
语法: delete from 表名
(where 条件表达式);
执行效果如图:
解析: 不加where条件表达式,表示删除表内所有数据,加上where条件表达式,表示删除表内的满足条件的数据。
使用truncate table 表名;语句清空表内所有数据。
语法: truncate table 表名;
执行效果如图:
简单查询
语法:SELECT [ALL|DISTINCT] 要查询的内容
FROM 表名列表 [WHERE 条件表达式]
[GROUP BY 字段名列表 [HAVING 逻辑表达式]]
[ORDER BY 字段名[ASC|DESC]]
[LIMIT [OFFSET,] n];
基本查询:
语法:select [ALL|DISTINCT] 要查询的内容 FROM 表名列表;
查询指定字段的数据
执行效果如图:
解析:查询字段的顺序是可以改变的,无需按照定义的顺序进行排列,当查询的内容是全部字段时,用'*',代表所有字段名的集合,distinct去除重复数据。
字段别名,以及查询的时间
语法:1,select 字段名 as 别名,字段名 as 别名,now() as 查询时间 from 表名;
2,select 字段名 别名,字段名 别名,now() 别名 from 表名;
执行效果如图:
解析:as()代表查询数据的时间
使用where子句
语法:SELECT [ALL|DISTINCT] 要查询的内容
FROM 表名列表
WHERE 条件表达式;
执行效果如图:
比较运算符
语法: select * from 表名
where 字段名='具体数据';
执行效果如图:
范围运算符
语法:select * from 表名
where sbirth between '' and '';
执行效果如图:
解析:日期时间类型是一个很特殊的数据类型,它不仅可以作为一个连续的范围使用between…and,还 可以进行加、减以及比较大小的操作。
列表运算符
语法:select * from 表名
where 字段名 in('','',...,'');
执行效果如图:
模式匹配运算符
语法:select * from 表名
where 姓名等字段名 like '模式运算符'
'%':匹配任意长度的字符串
'_'匹配任意单个字符
执行效果如图:
空值判断运算符
语法:select * from 表名
where 字段名 is null;
执行效果如图:
逻辑运算符
语法:and逻辑与
select * from 表名
where 条件1 and 条件2;
or逻辑或
select * from 表名
where 条件1 or 条件2;
not 逻辑非
select * from 表名
where not条件1;
执行效果如图:
解析:逻辑与也就是两个条件必须同时满足,输出的是同时满足两个条件的数据;逻辑或(一真即真,同假即假)简单说就是满足一个条件即可输出,输出的是满足一个条件或者同时满足两个条件的数据;逻辑非即不满足该条件的其它所有条件,输出的是不是2003年出生的学生。
order by子句
语法:select 要查询的内容 from 表名
where 条件表达式
order by 字段名 desc/asc;
解析:order by子句是对查询结果的数据按照指定字段的值进行重新排列,desc是降序排列,asc是升序排列;
使用limit子句
语法:select 要查询的内容 from 表名
where 条件表达式
order by 字段名 desc/asc
limit (offset,)n;
执行效果如图:
解析:offset可以不写,不写的话默认从第一条数据开始检索,n为几表示查询几条记录,offset代表从第几行记录开始检索。