Mysql-常见DML-DQL-语句语法用法总结

1、常见DML语句

1.1 INSERT语句

说明:将数据插入到数据库表中。

INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);

实例:添加C罗信息到数据库表中

insert into employee (ID, name, gender, entrydate, age) values (7,'克里斯蒂亚诺','男','2022-12-29',39);

1.2 UPDATE语句

说明:更新数据库表中现有数据行中的内容。

UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;

实例:将詹姆斯的年龄设置为29岁

update employee set age=29 where name='詹姆斯';

1.3 DELETE语句

说明:从数据库表中删除数据行。

DELETE FROM table_name WHERE condition;

实例:删除C罗信息

delete from employee where name='克里斯蒂亚诺';

2、常见DQL语句

2.1 SELECT语句

说明:用于从数据库中检索数据。

SELECT column1, column2, ... FROM table_name WHERE condition ORDER BY column_name ASC|DESC;

实例:

检索表中所有列的数据:

select * from employee;

检索指定列及符合条件的数据:

SELECT name, age FROM employee WHERE age > 25;

检索并按年龄降序排序:

SELECT name, age FROM users ORDER BY age DESC;

2.2 GROUP BY子句

说明:用于将行分组,并对每个组应用聚合函数。

实例:根据性别分组,并统计每个性别的员工个数

SELECT gender,count(*) FROM employee GROUP BY gender;

实例:选取 employee 表中年龄大于等于 25 岁的员工,然后按性别 (gender) 分组计算每个性别的平均年龄,并最终筛选出平均年龄也大于等于 25 岁的性别组。

SELECT gender, AVG(age) avgAge FROM employee WHERE age>=25  GROUP BY gender HAVING avgAge >= 25;

注意,where是在分组前进行过滤,不满足where条件不参与分组。having是对分组后的结果进行过滤。where不能对聚合函数进行判断,而having可以。

执行顺序 where >聚合函数>having。

2.3 DQL语句执行顺序

1、FROM 子句:

首先确定查询的数据来源,识别表或视图,并进行 JOIN 操作(如果有的话)。
处理表的合并、连接和子查询,形成查询的基础数据集。


2、WHERE 子句:

从 FROM 子句中生成的数据集中过滤数据,应用行级过滤条件,排除不满足条件的记录。


3、GROUP BY 子句:

将 WHERE 子句筛选后的数据按指定列进行分组。每个分组中会产生一个数据集合。


4、HAVING 子句:

对 GROUP BY 子句生成的每个分组进行进一步的过滤,应用分组级的条件。


5、SELECT 子句:

从经过 HAVING 子句过滤的数据中选择具体的列和表达式,计算聚合函数(如 COUNT、AVG、SUM 等)。


6、DISTINCT 子句:

在 SELECT 子句中选择的结果中去除重复的记录(如果有 DISTINCT 关键字的话)。


7、ORDER BY 子句:

对 SELECT 子句产生的结果集进行排序,按照指定的列和排序顺序(升序或降序)。


8、LIMIT / OFFSET 子句:

最后,限制返回的记录数(LIMIT)或跳过一定数量的记录(OFFSET),控制查询结果的范围。

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

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

相关文章

KUKA机器人维修保养消除报警

在使用KUKA机器人时,有时候会遇到示教器信息栏出现“基本检查到期”的信息,这就提示该机器到了基本保养时间了,需要进行保养。 一、报警信息和保养周期: KUKA机器人在使用超过一定保养周期后会出现“基本检查到期 / 中央手动保…

技术分析报告:StorageReview实验室打破π计算世界纪录

StorageReview实验室团队利用先进的计算系统,成功将π计算至202.112.290.000.000位,刷新了自己之前保持的105万亿位的世界纪录。这一成就突显了现代高性能计算(HPC)和精心设计的商用硬件平台的卓越能力。 关键技术组件&#xff1a…

【Unity navigation面板】

【Unity navigation面板】 Unity的Navigation面板是一个集成在Unity编辑器中的界面,它允许开发者对导航网格(NavMesh)进行配置和管理。 Unity Navigation面板的一些关键特性和功能: 导航网格代理(NavMesh Agent&…

Python爬虫获取视频

验证电脑是否安装python 1.winr输入cmd 2.在黑窗口输入 python.exe 3.不是命令不存在就说明python环境安装完成 抓取快手视频 1.在phcharm应用中新建一个项目 3.新建一个python文件 4.选择python文件,随便起一个名字后按回车 5.安装requests pip install requests 6.寻找需要的…

Beats:使用 Filebeat 从 Python 应用程序中提取日志

本指南演示了如何从 Python 应用程序中提取日志并将其安全地传送到 Elasticsearch Service 部署中。你将设置 Filebeat 来监控具有标准 Elastic Common Schema (ECS) 格式字段的 JSON 结构日志文件,然后你将在 Kibana 中查看日志事件发生的实时可视化。虽然此示例使…

【Python实战因果推断】23_倾向分3

目录 Propensity Score Matching Inverse Propensity Weighting Propensity Score Matching 另一种控制倾向得分的常用方法是匹配估计法。这种方法搜索具有相似可观测特征的单位对,并比较接受干预与未接受干预的单位的结果。如果您有数据科学背景,您可…

Python使用matplotlib绘制图像时,中文图例或标题无法正常显示问题

Python使用matplotlib绘制图像时,中文图例或标题无法显示问题解决方法 一、问题描述二、解决方法 欢迎学习交流! 邮箱: z…1…6.com 网站: https://zephyrhours.github.io/ 一、问题描述 Matplotlib库是Python中经常使用的绘图工…

如何注册微信公众号

如何注册微信公众号 如何注册一个微信公众号 😊📱摘要引言正文内容1. 准备工作内容定位和受众群体公众号名称和头像 2. 网页注册流程第一步:访问微信公众平台第二步:选择账户注册类型第三步:填写基本信息第四步&#x…

树型结构数据存储实践

很多业务场景会遇到树形结构的数据,如公司的人员职级树、行政区划树等。 使用类似MySQL的数据库进行存储,需要将树形结构(二维)存储到行格式(一维)的db中。 本文介绍了树型结构数据存储的三种方式&#xf…

Java视频点播网站

作者介绍:计算机专业研究生,现企业打工人,从事Java全栈开发 主要内容:技术学习笔记、Java实战项目、项目问题解决记录、AI、简历模板、简历指导、技术交流、论文交流(SCI论文两篇) 上点关注下点赞 生活越过…

[FreeRTOS 基础知识] 事件组 概念

文章目录 事件组 定义事件组 基本原理 事件组 定义 在实时操作系统(RTOS)中,事件组是一种用于任务间通信和同步的机制。事件组允许多个任务等待一个或多个事件的组合,当这些事件的组合满足特定条件时,任务可以被唤醒。…

vb.netcad二开自学笔记2:认识vs编辑器

认识一下宇宙第一编辑器的界面图标含义还是很重要的,否则都不知道面对的是什么还怎么继续? 一、VS编辑器中常见的图标的含义 变量 长方体:变量 局部变量 两个矩形块:枚举 预定义的枚举 紫色立方体:方法 橙色树状结构…

UE4_材质_材质节点_Fresnel

学习笔记,不喜勿喷,侵权立删,祝愿生活越来越好! 一、问题导入 在创建电影或过场动画时,你常常需要想办法更好地突显角色或场景的轮廓。这时你需要用到一种光照技术,称为边沿光照或边缘光照,它的…

Threejs环境、透视相机、坐标系、光源

文章目录 如何引入threejsnpm方式script方式script module方式 基本流程与坐标摄像机Geometry(几何体)和Material(材质)光源 如何引入threejs 对于很多刚刚上手threejs的朋友,可能第一步引入threejs就出问题了, 明明已经导入了,就是这样问题…

【搭建Nacos服务】centos7 docker从0搭建Nacos服务

前言 本次搭建基于阿里云服务器系统为(CentOS7 Linux)、Nacos(2.0.3)、Docker version 26.1.4 本次搭建基于一个新的云服务器 安装java yum install -y java-1.8.0-openjdk.x86_64安装驱动以及gcc等前置需要的命令 yum install …

【nvm管理nodejs版本,切换node指定版本】

nvm管理nodejs版本 nvm管理nodejs版本主要功能使用 nvm nvm管理nodejs版本 nvm(Node Version Manager)顾名思义node版本管理器,无须去node管网下载很多node安装程序;用于管理多个 Node.js 版本的工具。它允许你在同一台机器上同时安装和管理…

Appium启动APP时报错Security exception: Permission Denial

报错内容Security exception: Permission Denial: starting Intent 直接通过am命令尝试也是同样的报错 查阅资料了解到:android:exported | App quality | Android Developers exported属性默认false,所以android:exported"false"修改为t…

基于java+springboot+vue实现的图书商城管理系统(文末源码+Lw)283

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本图书商城管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信…

rpm包下载

内网无法下载、选择外网的一台机器下载rpm包 下载后上传rpm包 1、创建下载目录 mkdir /data/asap/test 2、下载能留存包的工具 sudo yum install yum-utils -y 报错就是环境问题没下载成功,我换了个环境正常的机器就可以了 3、下载rpm包到指定目录/data/asa…

测试人员如何管理项目与风险预警

在平时工作过程中,你有没有因项目延时,需求频繁变更,开发提测质量不高,以及漏测的情况下,背了不少锅的情况呢? 作为测试人员,我们应该如何发挥积极主动性,进行项目管理,有…