文章目录
CRUD简介
CRUD是对数据库中的记录进行的增删改查操作:
- Creat(创建)
- Retrieve(读取)
- Update(更新)
- Delete(删除)
一、Creat 新增
语法:
INSERT[INTO] table_name
[(column[,column]...)]VALUES(value_list)[,(value_list)]...
value_list: value,[,value]...
示例:
createtable users (
id bigint,
name varchar(50))
1.单行数据全列插入
- value_list中的值的数量必须和定义表的列的数量一致
#第一种方法(推荐)insertinto users (id , name)values(1,'张三');#第二种方法insertinto users values(1,'张三');
2.单行数据全指定列插入
- value_list中值的数量和顺序必须和指定列数量及顺序一致
insertinto users (name)values('张三');
3.多行数据指定列插入
- 在一条INSERT语句中也可以指定多个value_list,实现一次插入多行数据
insertinto users (id , name)values(2,'李四'),(3,'王五');
二、Retrieve 检索
语法:
SELECT[DISTINCT]
select_expr [, select_ expr]...[FROM table_references]WHERE where_condition][GROUPBY {col_name | expr},...][HAVING where_condition][ORDERBY {col_name | expr}[ASC|DESC],...][LIMIT {[offset,] row_count | ro_count OFFSEToffset}]
1.全列查询 --练习阶段最简单的查询:(在生产环境最好不要用!!)
语法:
select*from tbl_name;
- select:查询关键字
- :要查询字段的列表,表示的是所有列表
2.指定列查询
语法:
select col_name[,col_name]...from tbl_name;
- col_name可以为常量表达式,也可以是列与列之间运算的表达式。
拓展:给列名起别名
语法:
select col_name as other_name [,col_name as other_name]...from tbl_name;
- other_name:别名
3.结果去重查询
语法:
selectdistinct col_name from tbl_name;
4.where条件查询
语法:
select col_name[,col_name]...from tbl_name where where_condition;
where_condition:查询条件,可以通过一些运算符
比较运算符
运算符说明>,>=,<,<=大于,大于等于,小于,小于等于=等于,对于NULL的比较是不安全的,比如NULL=NULL的结果还是NULL<==>等于,对于NULL的比较是安全的,比如NULL<==>NULL的结果是TRUE!=,<>不等于value IN(option,…)如果value在option列表中,则返回TRUE,NOT IN则取反value between a0 and a1如果value在a0到a1这个闭区间,则返回TRUE,NOT between则取反is null是nullis not null不是nulllike模糊匹配,%表示任意多个字符(包括0个),_表示任意一个字符,NOT like则取反
- %表示任意多个字符:
- _表示任意一个字符:
逻辑运算符(优先级not>and>or)
运算符说明ADN多个条件必须都为TRUE(1),结果才是TRUE(1)OR任意一个条件为TRUE(1),结果为TRUE(1)NOT条件为TRUE(1),结果为FALSE(0)
5.分页查询
语法:
select...from table_name [where...][orderby...]limit num;#推荐第二条 select...from table_name [where...][orderby...]limitstart, num;select...from table_name [where...][orderby...]limit num offsetstart;
- start:表示从第几条开始,起始位置为第0条,起始位置若超过表中记录的范围,执行没有问题,
- num:表示读取多少条记录
- offset:偏移
6.order by排序
语法:
-- ASC为升序-- DESC为降序-- 默认为ASCselect...from table_name [where...]orderby {col_name | exper} [asc|desc],...;
三、Update 修改
语法:
UPDATE table_name
SET assignment [,assignment]...[WHERE where_condition][ORDERBY...][LIMIT row_count]
四、Delete 删除
语法:
DELETEFROM tbl_name [WHERE where_condition][ORDERBY...][LIMIT row_count];
截断表
语法:
truncate tabl_name;
- 会重置AUTO_INCREMENT
- 只能对整表操作,不能像delete对部分操作
【拓展】
插入查询结果
语法:
INSERT[INTO] table_name [(column[,column]...)]select...;
版权归原作者 卡皮巴拉吖 所有, 如有侵权,请联系我们删除。