MYSQL 表的增删改查(上)

目录

1.新增数据

2.查询数据

一般查询

去重查询 

排序查询

关于NULL 

条件查询

分页查询


1.新增数据

语法:insert into 表名[(字段1,字段2...)] values (值,值....);

插入一条新数据行,前面指定的列,要与后面values中的值要一一对应。

注意:

  • 字符串类型的值用英文的单引号记录 '

  • 注意 要保持全过程都是英文符号,可以通过符号之间的距离来判断是否是英文符号

现在,我们可以创建一个 student表 来帮助理解;

select * from student;的作用是查询表中的所有数据,这在后面的全列查询里会提到。 

现在,student表为空,这时候我们就可以往里面新增数据。

比如,我想放进去(1,张三),对应的语句就应该为:

一般形式

 insert into student(id, name) values (1,'张三');

注意:

  • 注意添加表名

简写形式

可以省略插入什么类型,根据表中的顺序直接插入数据即可

指定列插入

像student表中,就有id,name两列,那么我们可以选择只插入其中一列。

因为name存储类型为varchar,在不给name数据时,默认为null。

多行插入

实际就是在 values 后面多加几个括号。


2.查询数据

一般查询

全列查询

语法:

select * from 表名;

像是查询student表中的所有数据

现在将student表换为 exam表,对exam表进行全列查询,这个表可以自己创建一份,然后通过新增数据来实现。

 指定列查询

我们可以通过 指定查询的列 来实现指定列查询,实际上就是把 * 换成想要查询的列。

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

比如要查询 exam表中的 id,name,math列,演示及查询结果如下:

 列与列之间也可以参与运算

这样看着第三列的列头名不是很舒服,我们可以把这个重命名,如下有三种方式

  •  select id,name,chinese+math+english as 总分 from exam;
  •  select id,name,chinese+math+english 总分 from exam;
  •  select id,name,chinese+math+english as '总分' from exam;

三种方式有些细微的区别,这里我就选第一种做个演示 

去重查询 

语法:

select distinct 列名 from 表名;

只查询exam表中的math列

 可以看到,其中有11行,并且其中有两个98和80,这时候我们可以通过去重查询去除其中一个98和80。

可以看到这次查询的结果是有9行,并且没有重复的数。去重后,重复记录只保留一条。

注意:在查询结果中,每一列相同的MYSQL才认为他们是重复数据。

举个例子说,如果是从id,math列来进行去重查询,那么结果会有多少行?

11行,因为查询的id列并没有重复的内容,只有math里面有重复内容是无法进行去重的。

排序查询

排序规则:

  • 升序 ASC
  • 降序 DESC

语法:

select 列名 from 表名 order by 列名 [ASC | DESC];

默认为升序,也就是ASC。

还是以exam表为例,先对数学成绩进行升序查询;

 

可以看到这两种方式均可(是否省略 asc)。

在对英语成绩进行降序查询;

这里会看到其中有 -12 和 NULL,目的是为了来说明 NULL相关项。

 在数值比较时,NULL 视为比任何数据都小

在排序查询的时候,我们也可以通过别名进行查询

关于NULL 

MYSQL中的NULL比较特殊

  1. 不论和什么值进行比较,返回值都为NULL
  2. NULL始终被判定为FALSE
  3. NULL在MYSQL就是NULL,不是0或者其他内容

条件查询

根据一些指定条件,返回符合条件的记录。

语法:

select 列名 from 表名 where 列名/表达式 运算符 条件;

例如:

查询数学成绩 < 70 的同学;

 查询数学成绩 > 语文成绩的同学;

 查询语文成绩 > 80 且 英语成绩 > 80 的同学; 

 查询语文成绩 > 80 或者 数学成绩 > 90 的同学;

其中, 如果and和or同时出现,并且没有括号来进行优先级表示,那么and的优先级是要高于or

查询语文成绩在80到90之间的同学;

这里也可通过or方法进行查询,此处就不演示了。 

查询数学成绩是58或者59,或者98的同学;

分页查询

语法:

select ... from 表名 [where] [order by] LIMIT n;

n代表要查询记录的条数,即要查询n条记录。

例如,以id升序的表中查询前2条记录;

 还有一种方式,是从第几个往后查几个记录;

语法:

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

s,n代表着从s条开始,筛选n条。

下面这种形式更加明确,意思和第二种方式一样

select ... from 表名 [where] [order by] LIMIT n offset s;

offset 代表偏移量。

例如,以id升序的表中查询第一条后的2条记录;

这次的分享到这里就结束了,后面我会尽快把下部分给写出了,感谢支持 。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

重学SpringBoot3-异步编程完全指南

更多SpringBoot3内容请关注我的专栏&#xff1a;《SpringBoot3》 期待您的点赞&#x1f44d;收藏⭐评论✍ 重学SpringBoot3-异步编程完全指南 1. 简介2. Async注解2.1 基础配置2.2 基本使用2.3 自定义线程池 3. WebFlux响应式编程3.1 依赖配置3.2 响应式Controller示例3.3 响应…

【Linux】Linux 内存管理机制

前言 Linux 的内存管理机制是一个复杂而高效的系统&#xff0c;旨在确保系统资源的高效利用&#xff0c;同时提供良好的性能和响应能力。本文主要介绍 Linux 内存管理的主要组件和机制。 虚拟内存 概念: 每个进程在 Linux 中拥有自己的虚拟地址空间&#xff0c;这使得进程之…

Docker pull镜像拉取失败

因为一些原因&#xff0c;很多镜像仓库拉取镜像失败&#xff0c;所以需要更换不同的镜像&#xff0c;这是2024/11/25测试可用的仓库。 标题1、 更换镜像仓库的地址&#xff0c;编辑daemon.json文件 vi /etc/docker/daemon.json标题2、然后将下面的镜像源放进去或替换掉都可以…

对智能电视直播App的恶意监控

首先我们要指出中国广电总局推出的一个政策性文件是恶意监控的始作俑者&#xff0c;这个广电总局的政策性文件禁止智能电视和电视盒子安装直播软件。应该说这个政策性文件是为了保护特殊利益集团&#xff0c;阻挠技术进步和发展的。 有那么一些电视机和电视盒子的厂商和电信运…

网安基础知识|IDS入侵检测系统|IPS入侵防御系统|堡垒机|VPN|EDR|CC防御|云安全-VDC/VPC|安全服务

网安基础知识|IDS入侵检测系统|IPS入侵防御系统|堡垒机|VPN|EDR|CC防御|云安全-VDC/VPC|安全服务 IDS入侵检测系统 Intrusion Detection System 安全检测系统&#xff0c;通过监控网络流量、系统日志等信息&#xff0c;来检测系统中的安全漏洞、异常行为和入侵行为。 分为&am…

Golang面经

一、基础 1.make与new的区别 相同点:都是给变量分配内存 不同点: 作用变量类型不同,new给string,int,bool等分配内存,make给切片,map,channel分配内存;返回类型不一样,new返回指向变量的指针,make返回变量本身;new 分配的空间被初始化为零值。make 分配空间后会进…

文件导入-使用java反射修改日期数据

文件导入时&#xff0c;时间类型通常不能直接导出&#xff0c;以下方法为批量处理类中日期类型转字符串类型。 Date/Datetime --> String(yyyy-mm-dd)Field[] declaredFields HrAviationstudentMonitorDTO.class.getDeclaredFields(); for (Field field : declaredFields) …

C语言学习 12(指针学习1)

一.内存和地址 1.内存 在讲内存和地址之前&#xff0c;我们想有个⽣活中的案例&#xff1a; 假设有⼀栋宿舍楼&#xff0c;把你放在楼⾥&#xff0c;楼上有100个房间&#xff0c;但是房间没有编号&#xff0c;你的⼀个朋友来找你玩&#xff0c;如果想找到你&#xff0c;就得挨…

VITE+VUE3+TS环境搭建

前言&#xff08;与搭建项目无关&#xff09;&#xff1a; 可以安装一个node管理工具&#xff0c;比如nvm&#xff0c;这样可以顺畅的切换vue2和vue3项目&#xff0c;以免出现项目跑不起来的窘境。我使用的nvm&#xff0c;当前node 22.11.0 目录 搭建项目 添加状态管理库&…

Zookeeper选举算法与提案处理概览

共识算法(Consensus Algorithm) 共识算法即在分布式系统中节点达成共识的算法&#xff0c;提高系统在分布式环境下的容错性。 依据系统对故障组件的容错能力可分为&#xff1a; 崩溃容错协议(Crash Fault Tolerant, CFT) : 无恶意行为&#xff0c;如进程崩溃&#xff0c;只要…

ffmpeg视频滤镜:提取缩略图-framestep

滤镜描述 官网地址 > FFmpeg Filters Documentation 这个滤镜会间隔N帧抽取一帧图片&#xff0c;因此这个可以用于设置视频的缩略图。总体上这个滤镜比较简单。 滤镜使用 滤镜参数 framestep AVOptions:step <int> ..FV....... set frame st…

微服务篇-深入了解使用 RestTemplate 远程调用、Nacos 注册中心基本原理与使用、OpenFeign 的基本使用

&#x1f525;博客主页&#xff1a; 【小扳_-CSDN博客】 ❤感谢大家点赞&#x1f44d;收藏⭐评论✍ 文章目录 1.0 认识微服务 1.1 单体架构 1.2 微服务 1.3 SpringCloud 框架 2.0 服务调用 2.1 RestTemplate 远程调用 3.0 服务注册和发现 3.1 注册中心原理 3.2 Nacos 注册中心 …

uniapp在H5使用vue-router路由返回上一页不会触发销毁函数解决方法

问题&#xff1a;uniapp在H5使用vue-router路由&#xff0c;如果在H5平台上进行页面刷新操作&#xff0c;再返回上一页&#xff0c;可能会遇到beforeDestroy、destroyed、onUnload生命周期钩子不被触发的问题。这是因为在H5中&#xff0c;页面的刷新实际上是整个应用的重新加载…

TCP/IP学习笔记

TCP\IP从实际应用的五层结构开始&#xff0c;自顶而下的去分析每一层。 TCP/IP五层架构概述 学术上面是TCP/IP四层架构&#xff0c;OSI/ISO是七层架构&#xff0c;实际中使用的是TCP/IP五层架构。 数据链路层 ICMP数据包分析 Wireshark抓包分析ICMP协议_wireshark抓ping包分析…

互联网视频推拉流EasyDSS视频直播点播平台视频转码有哪些技术特点和应用?

视频转码本质上是一个先解码再编码的过程。在转码过程中&#xff0c;原始视频码流首先被解码成原始图像数据&#xff0c;然后再根据目标编码标准、分辨率、帧率、码率等参数重新进行编码。这样&#xff0c;转换前后的码流可能遵循相同的视频编码标准&#xff0c;也可能不遵循。…

HTML 常用标签属性汇总一〈body〉标签

背景属性:包括:bgcolor,background <body background—color:black〉 背景颜色 <body background—image : url(image/bg.gif)〉 背景图片 <body background—attachment : fixed〉 固定背景 〈body background—repeat : repeat〉 重复排列—网页预设 〈b…

深入理解 Java 基本语法之运算符

&#xff08;一&#xff09;研究背景 在 Java 编程中&#xff0c;运算符是处理数据和变量的基本工具&#xff0c;掌握各种运算符的使用方法对于提高编程效率至关重要。 &#xff08;二&#xff09;研究目的 深入理解 Java 基础运算符的概念、分类和作用&#xff0c;通过具体…

CRTP mixins EBO

CRTP mixins EBO 简洁的语言概括一下就是&#xff1a; CRTP&#xff1a;子类是父类的模板参数&#xff0c;用来实现静态多态 mixins&#xff1a;原本是一种通过继承增加类功能的设计模式&#xff0c;借助CRTP的话&#xff0c;应该和上面常说的CRTP反过来了&#xff1a;父类…

Excel把其中一张工作表导出成一个新的文件

excel导出一张工作表 一个Excel表里有多个工作表&#xff0c;怎么才能导出一个工作表&#xff0c;让其生成新的Excel文件呢&#xff1f; 第一步&#xff1a;首先打开Excel表格&#xff0c;然后选择要导出的工作表的名字&#xff0c;比如“Sheet1”&#xff0c;把鼠标放到“She…

istio结合wasm插件的实际应用

在 Istio 中&#xff0c;WASM 插件的常见使用场景和功能包括以下几个方面&#xff1a; 1. 流量管理与请求修改 请求与响应头处理&#xff1a;动态添加、删除或修改 HTTP 请求或响应头。URL 重写&#xff1a;根据特定规则调整请求的路径或参数。请求路由增强&#xff1a;实现复…