MySQL数据库操作基础(增删查改)

数据库操作基础(增删查改)

1.插入

1.1往数据表中插入一条数据

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

此处列出的这些值的数目和类型 要和表的相对应

image-20230714173539079

1.2指定列插入

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

image-20230714173849256

image-20230714175353393

1.3一次插入多个记录

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

image-20230714173952702

一次插入多行记录效率 往往高于 一次插入一条记录,分多次插入

2.查询

2.1 全列查询

select * from 表名;

这个操作,就是查询出当前数据库中所有的行和列

*****能够代表所有的列

image-20230714174839151

2.2 指定列查询

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

手动指定要查询的某一列或某几列~~ 服务器返回的结果,就只包含想要的数据~~

image-20230714175618988

2.3 查询字段为表达式

查询的同时,可以进行计算

eg:image-20230714180125773

image-20230714182319122

2.4 查询的时候给列/表达式 指定别名 as

select 列名 as 别名 from 表名;

as 关键字,可以省略,但是不建议 ,写上 as 会更容易看,别名会最终显示在查询结果的临时表中.

image-20230714183052577

2.5查询时去重 distinct

select distinct 列名 from 表名;

查询的时候,把重复的行,去掉,只保留一份~~

image-20230714183428684

2.6排序查询 order by ----- asc/desc

针对查询到的结果进行排序,

mysql 是一个客服端-服务器结构的程序~~,因此这里的排序,也是针对临时表进行的,对于数据库服务器上的原始数据没有任何顺序上的影响

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

asc 是升序,不写也是默认升序

desc 降序

image-20230714184102811

如果SQL中没有指定 order by,则我们不能确定他是有顺序的,虽然有时候我们看着是有顺序的,但是我们不能依赖这个顺序,因为mysql没有说他是有序的


order by 还能指定多个列排序~~(order by 后面可以写多个列~)

image-20230714184459787

2.7条件查询: where

2.7.1 运算符

指定一个筛选条件,把符合条件的结果保留下来,不符合的就剔除掉~~

关系运算符

在这里插入图片描述

逻辑运算符

image-20230715081659393

注:

  1. where 条件可以使用表达式,但不能使用别名。
  2. 多个条件时,使用 () 来确保正确的顺序

2.7.2 基本查询

eg:

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

image-20230715082120455

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

注: 条件比较的时候,并不只是使用列名和常量比较(math>60),也可以使用列名和其他列名比较~~

image-20230715082431778

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

注: 条件查询,也可以结合一些更复杂的表达式

image-20230715082741946

mysql 的 where 条件中,无法使用 的别名

image-20230715083206806

and 与 or

image-20230715083615589

2.7.3 范围查询

between and —查询这个区间

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

image-20230715093818537

注: 可以看出也能用 and 来实现,但是 between and 更方便

in 查询符合要求的

image-20230715094111595

2.7.4** 模糊查询 like**

mysql 进行 like 模糊查询,低效,实际开发,慎重使用

% 匹配任意多个(包括 0 个)字符

_ 匹配严格的一个任意字符

image-20230715094851624

2.7.5 null 查询 – > is[not]null

image-20230715100229722

null 与其他运算的结果还是 null,即最后结果相当于 false

image-20230715101839731

<=> 可以理解为 equals ,比较 两个值是否相同

c72068d18a4b8bd33159d66cb83e9c0


2.8分页查询 limit , offset 偏移量

LIMIT出现在查询语句的最后,可以使用一个参数或两个参数来限制取出的数据。其中第一个参数代表偏移量:offset(可选参数),第二个参数代表取出的数据条数:rows。

  • 单参数用法

当指定一个参数时,默认省略了偏移量,即偏移量为0,从第一行数据开始取,一共取rows条。

/* 查询前5条数据 */
SELECT * FROM Student LIMIT 5;
  • 双参数用法

当指定两个参数时,需要注意偏移量的取值是从0开始的,此时可以有两种写法:

/* 查询第1-10条数据 */
SELECT * FROM Student LIMIT 0,10;
/* 查询第11-20条数据 */
SELECT * FROM Student LIMIT 10 OFFSET 10;// 

针对查询出来的结果,进行 截取 ,取出其中的一个部分~~

image-20230715185049370

就像是四个一页

image-20230715185141524

offset 就是相当于 从哪一个开始算

上述八种查询的写法比较基础,也是经常用到的,熟练掌握即可,多写,多练


3.修改 update

update 表名 set 列名 = 值 where 条件...;

进行修好,要明确一些信息

  1. 改哪个表
  2. 改这个表里的哪个列/哪些列,改成什么
  3. 改这个表的哪些行

将孙悟空同学的数学成绩变为 80 分

image-20230715192836896


将曹孟德同学的数学成绩变更为 60 分, 语文成绩变更为 70 分;

update 表名 set chinese = 70, math = 60 where name = '曹孟德';

image-20230715193535640


修改操作,也可以搭配 order by 这样的排序操作

eg : 将总成绩倒数前三的 3 位同学的数学成绩加上 10 分

update 表名 set math = math + 10 order by chinese + math + english limit 3;

注意: 修改时也要结合一下数据范围,不要超出,不然会报错

例如加上 30 分会超过范围

image-20230715204038259

​ 由此,可以知道, update可以理解成,先查询,再修改,即先查询一下看修改后的是否符合条件,然后在进行修改


如果update 后面没有指定任何条件,则会把所有的行都进行修改

update 表名 set math = 0;

image-20230715204544180

由此可见, update 也是一个很危险的操作,更改甚至比误删的后果还要大,也要谨慎使用.

4.删除 delete

delete from 表名 where 条件;

直接删除 符合条件 的行~~

eg: 删除 孙悟空 的成绩

delete from 表名 where name = '孙悟空';

如果在 delete 的时候,没有指定条件,就会把整个表的所有数据都删掉!!

delete from 删除之后,表还在,表里的数据,没了~~

drop table 删除之后,表和表里的数据都没了~~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/690176.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

weditor安装时提示This is an issue with the package mentioned above, not pip

报错如下&#xff1a; note: This error originates from a subprocess, and is likely not a problem with pip. error: metadata-generation-failed Encountered error while generating package metadata. ╰─> See above for output. note: This is an issue with …

matlab BP神经网络

clear clc % 准备数据 inputs rand(10, 100); % 100组输入&#xff0c;每组10个特征 outputs rand(1, 100); % 100组输出&#xff0c;每组1个输出值 % 将数据分成训练集和测试集 trainRatio 0.8; valRatio 0.1; testRatio 0.1; [trainInd, valInd, testInd] divid…

分布式一致性理论

分布式一致性理论 1.数据库事务ACID理论 为保证事务正确可靠而必须具备的四个核心特性。这四个特性分别是&#xff1a;原子性&#xff08;Atomicity&#xff09;、一致性&#xff08;Consistency&#xff09;、隔离性&#xff08;Isolation&#xff09;和持久性&#xff08;D…

【Python报错】已解决TypeError: can only concatenate str (not “int“) to str

解决Python报错&#xff1a;TypeError: can only concatenate str (not “int”) to str 在Python中&#xff0c;字符串连接是常见的操作&#xff0c;但如果你尝试将整数&#xff08;int&#xff09;与字符串&#xff08;str&#xff09;直接连接&#xff0c;会遇到TypeError: …

【机器学习基础】Python编程08:五个实用练习题的解析与总结

Python是一种广泛使用的高级编程语言,它在机器学习领域中的重要性主要体现在以下几个方面: 简洁易学:Python语法简洁清晰,易于学习,使得初学者能够快速上手机器学习项目。 丰富的库支持:Python拥有大量的机器学习库,如scikit-learn、TensorFlow、Keras和PyTorch等,这些…

四十四、openlayers官网示例Geographic Coordinates解析——在地图上添加弹窗,点击显示图形信息

使用Overlay在地图上添加弹窗&#xff0c;点击控制显隐。 初始化图层的时候&#xff0c;添加一个矢量的点数据到地图上&#xff0c;在new Feature时添加一些自定义属性。 const place [-110, 45];const point new Point(place);const map new Map({target: "map"…

应用层——HTTP协议(自己实现一个http协议)——客户端(浏览器)的请求做反序列化和请求分析,然后创建http向响应结构

应用层&#xff1a;之前我们写的创建套接字&#xff0c;发送数据&#xff0c;序列化反序列化这些都是在写应用层 我们程序员写的一个个解决我们实际问题, 满足我们日常需求的网络程序, 都是在应用层 之前的网络计算机是我们自定义的协议&#xff1a;传输的数据最终是什么样的结…

概率论与数理统计,重要知识点——全部公式总结

二、一维随机变量及其分布 五个分布参考另外一篇文章 四、随机变量的数字特征 大数定理以及中心极限定理 六、数理统计

基于SpringBoot+Vue单位考勤系统设计和实现(源码+LW+调试文档+讲解等)

&#x1f497;博主介绍&#xff1a;✌全网粉丝1W,CSDN作者、博客专家、全栈领域优质创作者&#xff0c;博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌&#x1f497; &#x1f31f;文末获取源码数据库&#x1f31f; 感兴趣的可以先收藏起来&#xff0c;还…

【SkyWalking】使用PostgreSQL做存储K8s部署

拉取镜像 docker pull apache/skywalking-ui:10.0.1 docker tag apache/skywalking-ui:10.0.1 xxx/xxx/skywalking-ui:10.0.1 docker push xxx/xxx/skywalking-ui:10.0.1docker pull apache/skywalking-oap-server:10.0.1 docker tag apache/skywalking-oap-server:10.0.1 xxx…

K-BAT01,K-CU01和利时卡件

K-BAT01,K-CU01和利时卡件。现场控制站下装与在线调试。9二、组态流程&#xff1a;操作站组态控制站组态新建工程控制站用户组态历史站组态下装现场控制站下装历史站下装操作员站10三、组态详解&#xff1a;1、K-BAT01,K-CU01和利时卡件。新建工程&#xff1a;打开工程总控&…

SAP HCM HR_PAD_HIRE_EMPLOYEE 自定义信息类型字段保存问题

导读 INTRODUCTION SAP HCM入职程序&#xff1a;SAP HCM入职程序有两个一个是HR_PAD_HIRE_EMPLOYEE一个是HR_MAINTAIN_MASTERDATA&#xff0c;前面的函数是SAP为新框架开发的&#xff0c;后面函数是旧的逻辑&#xff0c;这两个函数的在于底层的结构不一致&#xff0c;对于自定…

Three.js——粒子效果、粒子水波、粒子组成立方体

个人简介 &#x1f440;个人主页&#xff1a; 前端杂货铺 ⚡开源项目&#xff1a; rich-vue3 &#xff08;基于 Vue3 TS Pinia Element Plus Spring全家桶 MySQL&#xff09; &#x1f64b;‍♂️学习方向&#xff1a; 主攻前端方向&#xff0c;正逐渐往全干发展 &#x1…

Linux卸载RocketMQ教程【带图文命令巨详细】

巨详细Linux卸载RocketMQ教程 #查询rocketmq进程 ps -ef | grep rocketmq #杀掉相关进程 kill -9 进程id #查找安装目录 find / -name runbroker.sh #删除rocketMQ目录 rm -rf 安装目录框起来的就是进程id&#xff0c;全部杀掉 这里就是我的安装目录&#xff0c;我的删除命令…

【进程调度的基本过程】初步认识进程和线程的区别与联系:计算机是如何工作的

​ &#x1f525;个人主页&#xff1a; 中草药 &#x1f525;专栏&#xff1a;【Java】登神长阶 史诗般的Java成神之路 &#x1f43a;一.冯诺依曼体系结构 认识计算机的祖师爷 -- 冯诺依曼 冯诺依曼&#xff08;John von Neumann&#xff0c;1903年12⽉28⽇-1957年2⽉8⽇&…

北航第四次数据结构与程序设计编程题复习

到期末了&#xff0c;所以再来复习一下以前的作业。 北航第四次数据结构与程序设计编程题 一、栈操作&#xff08;栈-基本题&#xff09;二、C程序括号匹配检查三、计算器&#xff08;表达式计算-后缀表达式实现&#xff0c;结果为浮点&#xff09;四、文本编辑操作模拟&#…

Flutter 使用ffigen生成ffmpeg的dart接口

Flutter视频渲染系列 第一章 Android使用Texture渲染视频 第二章 Windows使用Texture渲染视频 第三章 Linux使用Texture渲染视频 第四章 全平台FFICustomPainter渲染视频 第五章 Windows使用Native窗口渲染视频 第六章 桌面端使用texture_rgba_renderer渲染视频 第七章 使用ff…

数据挖掘--引论

数据挖掘--引论 数据挖掘--认识数据 数据挖掘--数据预处理 数据挖掘--数据仓库与联机分析处理 数据挖掘--挖掘频繁模式、关联和相关性&#xff1a;基本概念和方法 数据挖掘--分类 数据挖掘--聚类分析&#xff1a;基本概念和方法 1.2什么是数据挖掘 数据挖掘是从大量数据…

【Python】成功解决SyntaxError: invalid syntax

【Python】成功解决SyntaxError: invalid syntax 下滑即可查看博客内容 &#x1f308; 欢迎莅临我的个人主页 &#x1f448;这里是我静心耕耘深度学习领域、真诚分享知识与智慧的小天地&#xff01;&#x1f387; &#x1f393; 博主简介&#xff1a;985高校的普通本硕&am…

QT Udp广播实现设备发现

测试环境 本文选用pc1作为客户端&#xff0c;pc2&#xff0c;以及一台虚拟机作为服务端。 pc1,pc2(客户端&#xff09;: 虚拟机&#xff08;服务端)&#xff1a; 客户端 原理&#xff1a;客户端通过发送广播消息信息到ip:255.255.255.255(QHostAddress::Broadcast),局域网…