0


【MySQL】CRUD增删改查操作

文章目录


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...;
标签: mysql 数据库

本文转载自: https://blog.csdn.net/2301_80085602/article/details/142827634
版权归原作者 卡皮巴拉吖 所有, 如有侵权,请联系我们删除。

“【MySQL】CRUD增删改查操作”的评论:

还没有评论