【MYSQL表的增删改查(基础)】

embedded/2024/11/13 9:58:26/

MYSQL表的增删改查(基础)

  • 一、CRUD
  • 二、新增(Create)
      • 2.1 单行数据+全列插入
      • 2.2 多行数据+指定列插入
  • 三、查询(Retrieve)
      • 3.1 全列查询
      • 3.2 指定列查询
      • 3.3 查询字段为表达式
          • 3.3.1 表达式不包含字段
          • 3.3.2 表达式包含一个字段
          • 3.3.3 表达式包含多个字段
      • 3.4 别名
      • 3.5 去重:distinct
      • 3.6 排序ORDER BY
      • 3.7 条件查询:where
      • 3.8 分页查询:limit
  • 四、修改(Update)
  • 五、删除(Delete)

此篇博客希望对你有所帮助,不懂的或有错误的也可在评论区留言,错误必评论必回!!!

一、CRUD

注释:在SQL 中可以使用“–空格+描述”来表示注释说明;多行注释“/* +描述+*/”
CRUD:增加(Create)、查询(Retrieve)、更新(Update)、删除(Delete)

二、新增(Create)

语法:

insert into [(字段1,字段2,...)] values (),(),...

2.1 单行数据+全列插入

实例:
先创建一个学生表,学生表里面包含四个字段(学号,姓名,年龄,性别)

create table student(-> id int,-> name varchar(10),-> age int,-> sex varchar(1)-> );

单行插入,数量必须和定义的列的数量及顺序一致

insert into student values (1,'张三',10,'男');

错误实例及运行结果:

insert into student values (3);

在这里插入图片描述

2.2 多行数据+指定列插入

 insert into student(id,name,sex) values (4,'赵六','男'),(5,'钱七','女');

问题:*一次插入一条数据和一次插入多条数据哪个效率高?
答案:一次插入多条数据效率高!

1.减少网络开销:每次数据库和客户端之间进行数据插入时,每进行一次插入操作都需要建立网络连接。
2.写入数据时还会有磁盘IO的开销。
3.每执行一条SQL语句都会开启一个事务:在大多数数据库系统中,每次插入操作都会记录到事务日志中。
(事务的开启和关闭都需要消耗系统资源)
4.优化器利用。
5.锁定与并发:在处理大量数据时,单个插入可能会导致更高的锁定和竞争条件,影响并发性能。而批量插入可以通过减少插入操作的数量来减少锁定冲突。

三、查询(Retrieve)

3.1 全列查询

语法:

select * from 表名;

以student表为例:
在这里插入图片描述
注意:通常情况下不建议使用 * 进行全列查询

1.查询的列越多,意味着需要传输的数据量越大
2.可能会影响到索引的使用。

3.2 指定列查询

语法:

select 列名,列名,... from 表名;

实例:
在这里插入图片描述

3.3 查询字段为表达式

3.3.1 表达式不包含字段
select id,name,math ,10 from student;

在这里插入图片描述

数值类型,效果就是让所有的列中包含一个表达式中的值,但他本身并不在我们真实的表里。

3.3.2 表达式包含一个字段
 select id ,name ,math +1 from student;

在这里插入图片描述

数学成绩在原来的基础上加一分

3.3.3 表达式包含多个字段
select id ,name,math+english from student;

在这里插入图片描述

3.4 别名

为查询结果中的列指定别名表示返回的结果集中,以别名作为该列的名称。

语法:

select 列名 as 别名,列名 as 别名,... from 表名;

在这里插入图片描述

3.5 去重:distinct

使用**‘distinct’**关键字对某列数据进行去重。

语法:

select distinct 列名 from 表名;

在这里插入图片描述
注意:

去重时,查询结果中所有的列只有都相同才会被认为重复的记录;去重后,重复记录只保留一条!

在这里插入图片描述

3.6 排序ORDER BY

语法:

select 列名 from 表名 order by 列名 asc/desc;

排序规则:asc : 升序;desc :降序。

1.如果没有定义order by子句查询,返回的顺序是未定义的,不要依赖于这个数据。
在这里插入图片描述
2.null数据排序,视为比任何值都小,升序在最上面,反之,降序在最下面。
在这里插入图片描述
3.使用表达式及别名进行排序。
在这里插入图片描述
4.可以对多个字段进行排序,排序优先级随书写顺序。
在这里插入图片描述

这里的结果是先对数学进行升序排序,在数学排序的基础上,对英语进行降序排序。

3.7 条件查询:where

比较运算符:

在这里插入图片描述
示例:
1.用小于(<),大于(>),等于(=),大于等于(>=),小于等于(<=),不等于(<>或!=)在这里插入图片描述
2.IS NULL和IS NOT NULL
在这里插入图片描述
3.BETWEEN…AND…(左右闭区间)
在这里插入图片描述
4.LIKE 模糊查询
重新创建了一个test表,表中有三个列(id,姓名,性别)。
在这里插入图片描述
% 通配符
%代表零个、一个或多个字符。当在LIKE语句中使用%时,它会匹配任何字符序列(包括空序列)。
在这里插入图片描述
_ 通配符
_代表单个字符。当在LIKE语句中使用_时,它会匹配任何单个字符。
在这里插入图片描述

逻辑运算符:在这里插入图片描述
示例:
在这里插入图片描述
注意:

1.where条件查询可以使用表达式,但不能使用别名。
在这里插入图片描述2.用where条件查询,会过滤掉null值
在这里插入图片描述

3.逻辑运算符是有优先级的NOT>AND>OR,一般还是建议用小括号括起来。

3.8 分页查询:limit

语法:
从0开始,筛选n条结果

select 列名,列名...from 表名 [where...][order by...]limit n;

从s开始,筛选n条结果

select 列名,列名...from 表名 [where...][order by...]limit s ,n;

从s 开始,筛选n条结果,和第二种方法结果相同,但推荐第三种

select 列名,列名...from 表名 [where...][order by...]limit n offset s;

示例:
在这里插入图片描述
在这里插入图片描述

四、修改(Update)

语法:

update 表名 set 列名 = 数值,[列名 = 数值...][where...][order by...][limit...];

在这里插入图片描述
将张三的数学成绩改为99,英语改为60
在这里插入图片描述
mysql支持math =math + 30,但不支持math +=30。
在这里插入图片描述
数学成绩原来是0的这条记录没有发生实际改变,所以没有被实际修改
在这里插入图片描述
update操作的时候,如果不加where则修改的是整张表,是非常危险的操作!!!

五、删除(Delete)

语法:

delete from 表名 [where...][order by...][limit...];

示例:删除宋九这条信息
在这里插入图片描述
如果不加条件,则删除的是整张表,非常危险!!!


http://www.ppmy.cn/embedded/113892.html

相关文章

黑马点评19——多级缓存-缓存同步

文章目录 数据同步策略安装Canal监听canal实现缓存同步数据库连接遇到问题 在多级缓存中的数据一致性问题&#xff0c;也就是缓存同步的问题 数据同步策略 要是使用消息队列的方式&#xff0c;我们还需要修改代码&#xff0c;至少需要发送一条通知吧。 canal可以监听数据库的变…

Java之文件操作和IO

目录 File类 属性 构造方法 方法 文件内容的读写 InputStream OutputStream File类 属性 修饰符及类型属性说明static StringpathSeparator依赖于系统的路径分隔符&#xff0c;String类型的表示static charpathSeparator依赖于系统的路径分隔符&#xff0c;char类型的…

Linux-进程优先级

&#x1f308;个人主页&#xff1a;Yui_ &#x1f308;Linux专栏&#xff1a;Linux &#x1f308;C语言笔记专栏&#xff1a;C语言笔记 &#x1f308;数据结构专栏&#xff1a;数据结构 &#x1f308;C专栏&#xff1a;C 文章目录 1. 为什么要有优先级的概念2.进程优先级的基本…

国内外ChatGPT网站集合,无限制使用【2024-09最新】~

经过我一年多以来&#xff0c;使用各种AI工具的体验&#xff0c;我收集了一批AI工具和站点 这些工具都是使用的最强最主流的模型&#xff0c;也都在各个领域里都独领风骚的产品。 而且&#xff0c;这些工具你都可以无限制地使用。 无论你是打工人、科研工作者、学生、文案写…

xml中SQL执行错误(使用另外一张表的两个字段,组装SQL的where查询条件)

SQL实现功能描述&#xff1a;根据系统设置中的商店到期提醒周期、单位&#xff0c;在过期提醒的列表中&#xff0c;对数据进行周期展示 错误复现&#xff1a; Mapper接口中抽象方法的定义如下&#xff1a; Page<ShopVo> queryList(Param(“vo”) ShopVo shopVo ,Page&…

解决内存8G但是需要读取一个几百G的文件到内存的方法

内存映射&#xff08;Memory Mapping&#xff09;提供了一种有效的方法来处理这类问题&#xff0c;通过将文件的一部分或全部映射到进程的虚拟地址空间&#xff0c;使得对文件的访问就像访问内存一样高效。 1. 内存映射的基本概念 内存映射文件是一种将磁盘上的文件与进程的虚…

PDF——压缩大小的方法

方法一&#xff1a;QQ浏览器->格式转换->PDF转纯图PDF

C/C++实现植物大战僵尸(PVZ)(打地鼠版)

&#x1f680;欢迎互三&#x1f449;&#xff1a;程序猿方梓燚 &#x1f48e;&#x1f48e; &#x1f680;关注博主&#xff0c;后期持续更新系列文章 &#x1f680;如果有错误感谢请大家批评指出&#xff0c;及时修改 &#x1f680;感谢大家点赞&#x1f44d;收藏⭐评论✍ 游戏…