Mysql——对数据基本操作(增删查改)——操纵语言(DML)

news2025/1/11 16:42:41

之前的创建数据库和创建表,类型、约束都是用的DDL【data definition language】 数据定义语言,用来维护存储数据的结构
代表指令: create, drop, alter

那么现在我们来学习数据操纵语言
DML【data manipulation language】 数据操纵语言,用来对数据进行操作
代表指令: insert,delete,update
DML中又单独分了一个DQL,数据查询语言,代表指令: select

insert 插入

在这里插入图片描述

单行/多行/全列/指定列

1、单行全列插入:
在这里插入图片描述
2、单行指定列插入
在这里插入图片描述
3、多行全列插入:
在这里插入图片描述
5、多行指定列插入:
在这里插入图片描述
插入时更新:当插入的数据的主键或者唯一键和表中已有的发生冲突,那么表中的哪行主键或者唯一键之外的数据就更新为新插入的数据
on duplicate key update
在这里插入图片描述
替换:主键或唯一键发生冲突,直接删除后替换 replace
在这里插入图片描述

查询语句

select
全列查询:
在这里插入图片描述
指定列查询:
在这里插入图片描述
查询字段+整数
在这里插入图片描述
查询部分字段的总和+as重命名:总分
在这里插入图片描述
distinct 查询列去重:
在这里插入图片描述

结果去重:显示取中,只是查询显示出来的内容去重,表中的数据并没有真的被删除
distinct
在这里插入图片描述

条件查询

select … from table where 条件
在这里插入图片描述
like 模糊匹配
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

排序:
ASC升序(默认)
DESC降序

select … from table order by … ASC/DESC
在这里插入图片描述
在这里插入图片描述
筛选、查询、排序
在这里插入图片描述

分页:

有的表格太多数据,所以我们查询显示的时候可以分页来显示
limit 2 其实值是0,这里的意思就是显示两页
在这里插入图片描述
limit n1 n2 从其实位置n1页后,开始显示n2页
在这里插入图片描述

update 对查询的结果进行更新

update tablename set 要改变的字段 查询出的字段…
一定是先查询在更新
在这里插入图片描述
体现查询后再更新:
在这里插入图片描述

delete

查询后删除
在这里插入图片描述
删除整张表的数据后,如果表中有字段有自增属性的话,他的初始值不会随着表的删除而值0,而是会延续上一次的。——delete SQL语句的事务机制,
在这里插入图片描述
truncate 截断表,

  1. 只能对整表操作,不能像 DELETE 一样针对部分数据操作;
  2. 实际上 MySQL 不对数据操作,所以比 DELETE 更快,但是TRUNCATE在删除数据的时候,并不经过真正的事
    物,所以无法回滚
  3. 会重置 AUTO_INCREMENT 项

插入查询结果,把查询结果作为一张新表

样例:
把表中的数据去重:
之前的 distinct 只是对显示去重,其实表中的数据并没有去重,

所以我要先 创建一个与原表相同结构的表
在这里插入图片描述
把原表查询后去重的结果插入到新表中
在这里插入图片描述
然后直接把新表的名字改原表的名字,原表的名字改为其他的——直接重命名,就是把文件名和inode的对应改一下是原子的
在这里插入图片描述

聚合函数,把查询后的结果放入函数:

count() 查询个数
在这里插入图片描述
sum() 求总和
在这里插入图片描述
在这里插入图片描述

group by 分组

在这里插入图片描述
显示每个部门的平均工资和最高工资:
在这里插入图片描述
显示平均工资低于2000的部门和它的平均工资 'SMITH’这名运功不参与统计
在这里插入图片描述

where VS having
都是用于筛选 不同的是having可以用于对分组聚合之后的表进行筛选

分组——就相当于把一个表分为多个表,聚合后又形成一个表,不要认为只有磁盘上存储的表才是表,我们用SQL语句筛选出来的表也是表,之后的什么多个表,只要我们能够把他聚合成为一个表现实出来那么他也是表——MySQL一切皆表

执行顺序:where > group by> having

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

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

相关文章

现网/生产/一线问题记录

为信息安全考虑,涉及到公司保密信息的,用某来代替 文章目录 问题现象定位过程查看节点日志分析重启原因发现kafka消息积压分析dump追踪代码 定位结论经验总结,编码教训 问题现象 凌晨升级微服务,维护通知升级后某微服务频繁重启…

【Python开发】Python环境安装(Python3.8.0)与VS Code配置相应环境

一、安装Python环境 Python3.8.0下载连接 下载好后同意用户协议并点击安装 等待安装 安装完成 二、检查Python环境 按住键盘上的【Win】键【R】键,并在弹出窗口输入cmd 在弹出界面输入“Python”后,按下键盘回车键 若提示如下则Python环境安装成功 三、…

深入理解 iOS 中的 AutoLayout(一)

目录 1.前言 一、AutoLayout 基本概念 1.AutoLayout的概念 1.外部的变化 2.内部的变化 3.AutoLayout和基于frame的布局 2.不使用约束进行自动布局 1.xib使用UIStackView 2.纯代码方式设置UIStackView 3.AutoLayout中的约束 1.Auto Layout中的属性 1.边距约束 2.宽…

软件架构设计师-UML知识导图

软件架构设计师-UML知识导图,包含如下内容: 结构化设计,包含结构化设计的概念、结构化设计的主要内容、概要设计、详细设计及模块设计原则;UML是什么:介绍UML是什么;UML的结构:构造块、公共机制…

【SpringCloud】RabbitMQ——五种方式实现发送和接收消息

SpringAMQP SpringAMQP是基于RabbitMQ封装的一套模板,并且还利用SpringBoot对其实现了自动装配。 SpringAmqp的官方地址:https://spring.io/projects/spring-amqp SpringAMQP提供了三个功能: 自动声明队列、交换机及其绑定关系基于注解的…

Docker基本语法

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、更新yum镜像仓库(一)查看本地yum镜像源地址(二)设置docker的镜像仓库(1)安装必要工具…

安卓相关环境配置

安卓相关环境配置 偶尔更新。。。 JEB(动态调试好用) JEB动态调试Smali-真机/模拟器(详细,新手必看) 夜步城 JADX官网(静态分析) https://github.com/skylot/jadx/releases/tag/v1.5.0 雷…

Upload-Lab第3关:如何巧妙应对黑名单文件后缀检测?

关卡介绍 在Pass03中,我们面临的挑战是绕过文件上传功能的黑名单检测机制。黑名单检测是一种常见的安全措施,它通过检查上传文件的后缀来阻止特定类型的文件(如 .php, .exe)被上传。在这一关,我们需要找到一种方法,上传一个可以执行的恶意文件,同时绕过黑名单检测。 …

Vue3学习 Day01

创建第一个vue项目 1.安装node.js cmd输入node查看是否安装成功 2.vscode开启一个终端,配置淘宝镜像 # 修改为淘宝镜像源 npm config set registry https://registry.npmmirror.com 3.下载依赖,启动项目 访问5173端口 第一个Vue项目的目录结构 我们先打…

C++ | Leetcode C++题解之第336题回文对

题目&#xff1a; 题解&#xff1a; //字典树节点 class TrieNode { private:bool isEnd;//单词结束标记int index;//单词序号vector<TrieNode*> children;//子节点 public://构造TrieNode():index(-1),isEnd(false),children(26,nullptr){}//析构~TrieNode(){for(int i…

php连接sphinx的长连接事宜以及sphinx的排除查询以及关于sphinx里使用SetSelect进行复杂的条件过滤或复杂查询

一、php连接sphinx的长连接事宜以及sphinx的排除查询 在使用php连接sphinx时&#xff0c;默认的sphinx连接非长连接&#xff0c;于是在想php连接sphinx能否进行一些优化 publish:January 9, 2018 -Tuesday: 方法&#xff1a;public bool SphinxClient::open ( void ) — 建立到…

24/8/15算法笔记 复习_决策回归树

from sklearn.tree import DecisionTreeRegressor from sklearn import tree import numpy as np import matplotlib.pyplot as plt#创建数据 X_train np.linspace(0,2*np.pi,40).reshape(-1,1)#训练数据就是符合要求的二维数据 #二维&#xff1a;[[样本一].[样本二]&#xff…

Elasticsearch、Easy-es 快速入门 SearchAfterPage分页 若依前后端分离 Ruoyi-Vue SpringBoot

一、环境安装 Elasticsearch ik分词器 1.1 下载解压Elasticsearch-7.x版本&#xff0c;越高越好&#xff0c;低版本有Log4j漏洞&#xff0c;Easy-es目前支持7.x 1.2 IK中文分词器 将对应Elasticsearch版本IK放进文件夹&#xff0c;Elasticsearch-7.6.1&#xff0c;ik对应版…

GPT-SoVITS

文章目录 model archS1 ModelS2 model model arch S1 model: AR model–ssl tokensS2 model: VITS&#xff0c;ssl 已经是mel 长度线性相关&#xff0c;MRTE(ssl_codes_embs, text, global_mel_emb)模块&#xff0c;将文本加强相关&#xff0c;学到一个参考结果 S1 Model cla…

Lora 全文翻译

作者&#xff1a; 地点&#xff1a;hby 来源&#xff1a;https://arxiv.org/pdf/2106.09685 工具&#xff1a;文心 LORA: LOW-RANK ADAPTATION OF LARGE LANGUAGE MODELS 摘要 自然语言处理的一个重要范式包括在通用领域数据上进行大规模预训练&#xff0c;并适应特定任务或…

Qt自定义控件:关于大佬“飞扬青云“的自定义UI控件的使用教程(MinGw,MSVC)

前言 最近在搞自定义控件&#xff0c;无意间发现大佬飞扬青云的开源项目&#xff0c;Qt/C编写超精美自定义控件 这里先贴出大佬项目地址和博客 码云&#xff1a;wwlzq5/qucsdk (gitee.com)&#xff08;旧版下载地址Qt4.7到Qt5.14&#xff09; github&#xff1a;https://git…

攻克面试:高频面试题与常见算法深度剖析

干货分享&#xff0c;感谢您的阅读&#xff01; &#xff08;暂存篇---后续会删除&#xff0c;完整版和持续更新见高频面试题基本总结回顾&#xff08;含笔试高频算法整理&#xff09;&#xff09; 备注&#xff1a;引用请标注出处&#xff0c;同时存在的问题请在相关博客留言…

第1章 大模型的概念、发展历程和应用领域

大模型&#xff1a;塑造未来的智能力量 目录 引言&#xff1a;大模型的定义与影响大模型的发展历程 早期探索&#xff1a;深度学习的起步中期发展&#xff1a;算法的革新与计算能力的提升当代突破&#xff1a;大模型的崛起 大模型的影响与未来展望 引言&#xff1a;大模型的定…

【设计模式】六大原则之依赖倒置原则(Dependency Inversion Principle,‌DIP)

设计模式是对相关问题提出的解决方案。 一般而言&#xff0c;一个模式有四个基本要素&#xff1a; 模式名称 &#xff08;pattern name&#xff09; 一个助记名&#xff0c;它用一两个词语来描述模式问题、解决方案和效果。问题&#xff08;problem&#xff09;描述了应该在何…

Unity中对Spine动画播放、暂停、事件处理管理类

Unity中对Spine动画播放、暂停、事件处理管理类 介绍Spine的事件处理动画师制作沟通Unity前端使用事件 Unity中动画播放Unity中动画暂定和继续Unity中停止动画Unity中动画转向Unity中获取骨骼和设置插槽附件完整管理类分享总结 介绍 最近在做设计spine动画的抖音小程序&#x…