【MySQL】MySQL表的增删改查(初阶)

2024-08-26 09:44

本文主要是介绍【MySQL】MySQL表的增删改查(初阶),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

欢迎关注个人主页:逸狼


创造不易,可以点点赞吗~

如有错误,欢迎指出~



目录

 表内容操作

插入内容

按顺序插入

指定某些列插入

一次插入多行记录

插入时间

查询表内容

全列查询

指定列查询

 指定表达式查询 

用as取别名

​编辑

去重查询

排序查询order by

条件查询 (关键)

比较运算符

逻辑运算符

练习

基本查询

and和or

 范围查询

like 模糊匹配

分页查询

修改表内容

删除表内容


 表内容操作

插入内容

按顺序插入

insert into 表名 values(值,值,值.....);    新增(这里列的个数 和 类型 要和表结构 匹配)

SQL中表示字符串可以使用 " 或 '

SQL中类型会尝试自动强转

指定某些列插入

insert into 表名(列名,列名....)values(值,值.....);

一次插入多行记录

insert into  表名 values(值,值....),(值,值....),(值,值....).....;  每个括号代表一行

插入时间

可以插入当前系统时间,使用库函数 now()  -->获取当前时刻

查询表内容

全列查询

select  * from 表名;  全列查询(查询出这个表的所有行和列) , * 是通配符,可以指代所有的列.

注意: select * 是一个很危险的操作,因为如果表非常大(千万/亿级别的数据量),进行select * 会产生大量的硬盘IO 和网络 IO,很可能会把你的硬盘 /网卡 带宽给吃满. 若是在公司的生产环境下进行 select * ,很可能会使其他用户访问数据库的时候 出现访问失败的情况

指定列查询

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

为了方便举例,下面创建一个成绩表

下图指定 name和math列输出

 指定表达式查询 

select 表达式 from 表名;  输出的结果是"零时表",数据库本体(数据库服务器硬盘上的数据)没有任何改变

下图查询的是 语文成绩+10 的结果.

用as取别名

select 表达式 as 别名 from 表名;   这里的as可以省略(但是不建议,因为as省略后,别名就非常容易当成表达式的一部分)

下图输出总成绩 以total 命名

去重查询

select distinct 列名 from 表名;  查询的结果里必须是全部一样才能去重

排序查询order by

select 列名 from 表名 order by 列名;    针对查询结果进行排序,指定按照某个列进行排序,可以指定升序(asc  默认是 升序,可以省略)和 降序(desc)  ,select 语句对排序没有任何影响, 在排序之前,顺序是不可预期的

 

 order by可以指定多个列查询,先按照第一个列查询,这列相同的部分 会按照第二列排序.....

条件查询 (关键)

select 列名 from 表名 where 条件;   查询过程中,指定筛选条件,满足条件的就保留,不满足条件的就跳过

比较运算符

逻辑运算符

注意:

  • WHERE条件可以使用表达式,但不能使用别名。
  • AND的优先级高于OR,在同时使用时,需要使用小括号()包裹优先执行的部分
练习
基本查询

查询英语不及格的同学及英语成绩 ( < 60 )

查询语文成绩好于英语成绩的同学 

查询总分在 200 分以下的同学 

 使用别名时注意:  条件不能用别名,会报错

and和or

查询语文成绩大于80分,且英语成绩大于80分的同学 

查询语文成绩大于80分,或英语成绩大于80分的同学 

 范围查询

where 列名 between ...and ;

查询语文成绩在 [80, 90] 分的同学及语文成绩

用and实现同样的效果 

where 列名 in(要查询的值,多个值用 , 隔开);   针对离散的数据

查询数学成绩是 58 或者 59 或者 98 或者 99 分的同学及数学成绩

like 模糊匹配

like要搭配通配符一起使用

where 列名 like 通配符;

  • % :匹配 0 个或 任意 个的任意字符
  • _  : 匹配 1 个特定的字符

like 是一个比较低效的操作,数据库本来就慢,所以开发时使用like 要节制~

通过下列例子理解like 的用法

不要拿= 和null比较,要用<=>或 is null 判断

分页查询

select 列名 from 表名 limit N;    N代表限制 n 条记录

limit可以搭配offset使用

select 列名 from 表名 limit N offset M;   表示从下标为M开始记录(从0开始计算) N 条

上面代码可以简写为 select * from exam_result limit 4 , 3 ;

修改表内容

update 表名 set 列名 = 值 , 列名 = 值.....   后面可以加上条件 where /order by/ limit ,如果没有指定任何条件 ,修改的就是所有行. update 同样也是危险操作(真正改的是硬盘上的数据,"持久有效"),

匹配的结果 >= 实际修改的结果

删除表内容

delete from 表名 where 条件 / order by / limit;  将筛选出的行删除,  这也是 危险操作!!!

若没有指定条件,删除的就是这个表的数据,但是这个表还在(空表)

这篇关于【MySQL】MySQL表的增删改查(初阶)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1108210

相关文章

SQL BETWEEN 的常见用法小结

《SQLBETWEEN的常见用法小结》BETWEEN操作符是SQL中非常有用的工具,它允许你快速选取某个范围内的值,本文给大家介绍SQLBETWEEN的常见用法,感兴趣的朋友一起看看吧... 在SQL中,BETWEEN是一个操作符,用于选取介于两个值之间的数据。它包含这两个边界值。BETWEEN操作符常用

MySQL索引的优化之LIKE模糊查询功能实现

《MySQL索引的优化之LIKE模糊查询功能实现》:本文主要介绍MySQL索引的优化之LIKE模糊查询功能实现,本文通过示例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录一、前缀匹配优化二、后缀匹配优化三、中间匹配优化四、覆盖索引优化五、减少查询范围六、避免通配符开头七、使用外部搜索引擎八、分

MySql match against工具详细用法

《MySqlmatchagainst工具详细用法》在MySQL中,MATCH……AGAINST是全文索引(Full-Textindex)的查询语法,它允许你对文本进行高效的全文搜素,支持自然语言搜... 目录一、全文索引的基本概念二、创建全文索引三、自然语言搜索四、布尔搜索五、相关性排序六、全文索引的限制七

数据库面试必备之MySQL中的乐观锁与悲观锁

《数据库面试必备之MySQL中的乐观锁与悲观锁》:本文主要介绍数据库面试必备之MySQL中乐观锁与悲观锁的相关资料,乐观锁适用于读多写少的场景,通过版本号检查避免冲突,而悲观锁适用于写多读少且对数... 目录一、引言二、乐观锁(一)原理(二)应用场景(三)示例代码三、悲观锁(一)原理(二)应用场景(三)示例

SpringBoot集成Milvus实现数据增删改查功能

《SpringBoot集成Milvus实现数据增删改查功能》milvus支持的语言比较多,支持python,Java,Go,node等开发语言,本文主要介绍如何使用Java语言,采用springboo... 目录1、Milvus基本概念2、添加maven依赖3、配置yml文件4、创建MilvusClient

SQL表间关联查询实例详解

《SQL表间关联查询实例详解》本文主要讲解SQL语句中常用的表间关联查询方式,包括:左连接(leftjoin)、右连接(rightjoin)、全连接(fulljoin)、内连接(innerjoin)、... 目录简介样例准备左外连接右外连接全外连接内连接交叉连接自然连接简介本文主要讲解SQL语句中常用的表

SQL server配置管理器找不到如何打开它

《SQLserver配置管理器找不到如何打开它》最近遇到了SQLserver配置管理器打不开的问题,尝试在开始菜单栏搜SQLServerManager无果,于是将自己找到的方法总结分享给大家,对SQ... 目录方法一:桌面图标进入方法二:运行窗口进入方法三:查找文件路径方法四:检查 SQL Server 安

MySQL 中的 LIMIT 语句及基本用法

《MySQL中的LIMIT语句及基本用法》LIMIT语句用于限制查询返回的行数,常用于分页查询或取部分数据,提高查询效率,:本文主要介绍MySQL中的LIMIT语句,需要的朋友可以参考下... 目录mysql 中的 LIMIT 语句1. LIMIT 语法2. LIMIT 基本用法(1) 获取前 N 行数据(

MySQL 分区与分库分表策略应用小结

《MySQL分区与分库分表策略应用小结》在大数据量、复杂查询和高并发的应用场景下,单一数据库往往难以满足性能和扩展性的要求,本文将详细介绍这两种策略的基本概念、实现方法及优缺点,并通过实际案例展示如... 目录mysql 分区与分库分表策略1. 数据库水平拆分的背景2. MySQL 分区策略2.1 分区概念

MySQL高级查询之JOIN、子查询、窗口函数实际案例

《MySQL高级查询之JOIN、子查询、窗口函数实际案例》:本文主要介绍MySQL高级查询之JOIN、子查询、窗口函数实际案例的相关资料,JOIN用于多表关联查询,子查询用于数据筛选和过滤,窗口函... 目录前言1. JOIN(连接查询)1.1 内连接(INNER JOIN)1.2 左连接(LEFT JOI