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

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.rhkb.cn/news/427225.html

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

相关文章

react是什么?

文章目录 核心特点1. **组件化**2. **虚拟 DOM** 3. **声明式编程**4. **单向数据流**5. **JSX 语法**6. **Hooks** react的优势劣势 React 是一个由 Facebook 开发和维护的开源 JavaScript 库&#xff0c;用于构建用户界面&#xff0c;特别是单页应用程序&#xff08;SPA&…

[PICO VR眼镜]眼动追踪串流Unity开发与使用方法,眼动追踪打包报错问题解决(Eye Tracking/手势跟踪)

前言 最近在做一个工作需要用到PICO4 Enterprise VR头盔里的眼动追踪功能&#xff0c;但是遇到了如下问题&#xff1a; 在Unity里面没法串流调试眼动追踪功能&#xff0c;根本获取不到Device&#xff0c;只能将整个场景build成APK&#xff0c;安装到头盔里&#xff0c;才能在…

枚举(not二分)

前言&#xff1a;这一题似乎用不了二分以及三分&#xff0c;害我写这么久&#xff0c;但是查找下一个元素的时候要用到二分查找 题目地址 #include<bits/stdc.h> using namespace std; #define endl "\n"int n; const int N (int)2e510; vector<int> a;…

OceanBase 中 schema 的定义与应用

背景 经常在OceanBase 的问答社区 里看到一些关于 “schema 是什么” 的提问。 先纠正一些同学的误解&#xff0c; OceanBase 中的 Schema 并不简单的等同于 Database&#xff0c;本次分享将探讨 OceanBase 中的Schema是什么&#xff0c;及一些大家经常遇到的问题。 具体而…

JavaDS —— 图

图的概念 图是由顶点集合以及顶点之间的关系组成的一种数据结构&#xff1a;G &#xff08;V&#xff0c;E&#xff09; 其中 V 表示的是顶点集合 &#xff1a; V { x | x 属于某个数据对象集} 是有穷非空集合 E 叫做边的集合 &#xff1a; E {(x, y) | x, y 属于 V} 或者 …

UE5源码Windows编译、运行

官方文档 Welcome To Unreal Engine 5 Early Access Learn what to expect from the UE5 Early Access program. 链接如下&#xff1a;https://docs.unrealengine.com/5.0/en-US/Welcome/#gettingue5earlyaccessfromgithub Step 0&#xff1a;找到UE5源码 直接先上链接 https…

MySQL原理之UUID主键分析,插入或更新语法分析

文章目录 1 MySQL不能用UUID做主键1.1 前言1.2 mysql和程序实例1.2.1 准备工作1.2.2 开始测试1.2.3 程序写入结果1.2.4 效率测试结果 1.3 使用uuid和自增id的索引结构对比1.3.1 自增id1.3.2 uuid 1.4 自增id缺点1.5 雪花算法 2 插入或更新2.1 on duplicate key2.1.1 定义2.1.2 …

24年蓝桥杯及攻防世界赛题-MISC-3

21 reverseMe 复制图片&#xff0c;在线ocr识别&#xff0c;https://ocr.wdku.net/&#xff0c;都不费眼睛。 22 misc_pic_again ┌──(holyeyes㉿kali2023)-[~/Misc/tool-misc/zsteg] └─$ zsteg misc_pic_again.png imagedata … text: “$$KaTeX parse error: Undefined…

python基础(1)pyenv安装和对Django使用

pyenv安装 pyenv主要针对类 Unix 系统&#xff08;如 Linux、macOS&#xff09;用户&#xff0c;pyenv-win 是专为 Windows 开发的 pyenv 版本&#xff0c;允许您在不使用 WSL 的情况下管理多个 Python 版本和虚拟环境。 建议Git Bash&#xff1a; Powershell或Git Bash&…

功能测试干了三年,快要废了。。。

8年前刚进入到IT行业&#xff0c;到现在学习软件测试的人越来越多&#xff0c;所以在这我想结合自己的一些看法给大家提一些建议。 最近聊到软件测试的行业内卷&#xff0c;越来越多的转行和大学生进入测试行业&#xff0c;导致软件测试已经饱和了&#xff0c;想要获得更好的待…

Java键盘输入语句

编程输入语句 1.介绍:在编程中&#xff0c;需要接受用户输入的数据&#xff0c;就可以使用键盘输入语句来获取。 2.步骤&#xff1a; 1&#xff09;导入该类的所在包&#xff0c;java.util.* 2)创建该类对象&#xff08;声明变量&#xff09; 3&#xff09;调用里面的功能 3…

任务书与开题报告的区别与联系:如何让二者相辅相成

AIPaperGPT&#xff0c;论文写作神器~ https://www.aipapergpt.com/ 大家好&#xff01;今天咱们聊聊论文写作过程中两个让人又爱又恨的关键步骤&#xff1a;任务书和开题报告。 这两兄弟可是你毕业路上的第一关卡&#xff0c;搞不定它们&#xff0c;你后面别说论文了&#…

时序必读论文12|ICML22 FEDformer基于周期分解的长时序预测transformer架构

论文标题&#xff1a;FEDformer: Frequency Enhanced Decomposed Transformer for Long-term Series Forecasting 开源代码&#xff1a;https://github.com/DAMO-DI-ML/ICML2022-FEDformer 前言 FEDformer这篇文章发表于2022年的ICML。其实如果只比较性能的话&#xff0c;到…

微信如何发布学生查分?教师平台推荐!

学校和老师们都在面临着一个共同的问题&#xff1a;如何高效、便捷地发布学生成绩查询信息&#xff1f;在这个数字化时代&#xff0c;传统的纸质通知和口头传达方式已经无法满足家长和学生的需求。幸运的是&#xff0c;有了易查分这样的在线工具&#xff0c;发布学生查分变得简…

vitis Failed to create the part‘s controls解决方法

类似于 解决方法&#xff1a;重启vitis。 效果&#xff1a; 可以建立lab4了。

wallpaper engine壁纸提取

下载提取软件RavioliGameTools_v2.10.zip https://pan.baidu.com/s/14ZCVw3ucRERsB-GGGoCOqQ 2.运行RExtractor.exe 3.Input file(s)、Output directory填好 4.勾选Allow scanning of unkown files 5.点击Start

Ceph官方文档_01_Ceph简介

目录 Ceph介绍Ceph介绍 Ceph可用于向云平台提供Ceph对象存储,Ceph可用于向云平台提供Ceph块设备服务。Ceph可用于部署Ceph文件系统。所有Ceph存储群集部署开始都是先设置每个Ceph节点,然后再设置网络。 Ceph存储集群需要以下内容:至少一个Ceph监视器和至少一个Ceph管理器,…

vulnhub靶机:Breach 2.1详细过程

下载 下载地址&#xff1a;https://www.vulnhub.com/entry/breach-21,159/ 修改网络模式 根据靶机的描述得知该靶机适用于静态ip&#xff0c;即192.168.110.151&#xff1b;配置虚拟机的虚拟网络编辑器的仅主机模式&#xff0c;将其子网IP配置在110网段&#xff0c;并将攻击…

C++初阶学习第六弹------标准库中的string类

目录 一.标准库中的string类 二.string的常用接口函数 2.1string类对象的构造 2.2 string的容量操作 2.3 string类的访问与遍历 2.4 string类对象的修改 2.5 string类常用的非成员函数 三、总结 一.标准库中的string类 可以简单理解成把string类理解为变长的字符数组&#x…

2024.9.13 Python与图像处理新国大EE5731课程大作业,索贝尔算子计算边缘,高斯核模糊边缘,Haar小波计算边缘

1.编写一个图像二维卷积程序。它应该能够处理任何灰度输入图像&#xff0c;并使用以下内核进行操作&#xff1a; %matplotlib inline import numpy as np import matplotlib.pyplot as plt from scipy import linalg import random as rm import math import cv2# import and …