当前位置: 首页 > news >正文

MySQL 常用 SQL 语句大全

1. 基本查询
查询所有记录和字段

SELECT * FROM table_name;

查询特定字段

SELECT column1, column2 FROM table_name;

查询并限制结果

SELECT column1, column2 FROM table_name LIMIT 10;

条件查询

SELECT column1, column2 FROM table_name WHERE condition;

模糊匹配

SELECT column1 FROM table_name WHERE column2 LIKE 'pattern%';

匹配多个值

SELECT column1 FROM table_name WHERE column2 IN (value1, value2);

不匹配某些值

SELECT column1 FROM table_name WHERE column2 NOT IN (value1, value2);

2. 数据插入
插入单条记录

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

插入多条记录

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

从另一个表插入数据

INSERT INTO table1 (column1, column2)
SELECT column1, column2 FROM table2 WHERE condition;

3. 数据更新
更新单条记录

UPDATE table_name SET column1 = value1 WHERE condition;

批量更新

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

基于其他表的更新(关联更新)

UPDATE table1
JOIN table2 ON table1.common_column = table2.common_columnSET table1.column1 = table2.column2
WHERE table2.condition;

4. 数据删除
删除单条记录

DELETE FROM table_name WHERE condition;

批量删除

DELETE FROM table_name WHERE condition;

删除表中的所有记录(也叫截断表)

TRUNCATE TABLE table_name;


5. 表操作
创建表

CREATE TABLE table_name (id INT AUTO_INCREMENT PRIMARY KEY,column1 VARCHAR(255) NOT NULL,column2 INT DEFAULT 0,created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);


修改表结构

添加列

ALTER TABLE table_name ADD column_name VARCHAR(255);

删除列

ALTER TABLE table_name DROP COLUMN column_name;


修改列类型

ALTER TABLE table_name MODIFY column_name INT;

重命名列

ALTER TABLE table_name CHANGE old_column_name new_column_name VARCHAR(255);

删除表

DROP TABLE table_name;

删除数据库

DROP DATABASE database_name;

6. 索引管理
创建索引

CREATE INDEX index_name ON table_name (column_name);


创建唯一索引

CREATE UNIQUE INDEX index_name ON table_name (column_name);

删除索引

DROP INDEX index_name ON table_name;


7. 表连接
内连接(INNER JOIN)

SELECT * FROM table1
INNER JOIN table2 ON table1.common_column = table2.common_column;

左连接(LEFT JOIN)

SELECT * FROM table1
LEFT JOIN table2 ON table1.common_column = table2.common_column;

右连接(RIGHT JOIN)

SELECT * FROM table1
RIGHT JOIN table2 ON table1.common_column = table2.common_column;

全连接(FULL JOIN)

SELECT * FROM table1
LEFT JOIN table2 ON table1.common_column = table2.common_column
UNION
SELECT * FROM table1
RIGHT JOIN table2 ON table1.common_column = table2.common_column;


8. 聚合函数
计数

SELECT COUNT(*) FROM table_name;

平均值

SELECT AVG(column_name) FROM table_name;

总和

SELECT SUM(column_name) FROM table_name;

最大值

SELECT MAX(column_name) FROM table_name;

最小值

SELECT MIN(column_name) FROM table_name;

9. 分组与排序
分组

SELECT column1, COUNT(*) FROM table_name
GROUP BY column1;

排序

SELECT * FROM table_name
ORDER BY column1 ASC;SELECT * FROM table_name
ORDER BY column1 DESC;

分页

SELECT * FROM table_name
LIMIT 10 OFFSET 20;

10. 子查询
在 WHERE 子句中

SELECT * FROM table_name
WHERE column1 = (SELECT MAX(column1) FROM table_name);

在 FROM 子句中

SELECT * FROM (SELECT column1, column2 FROM table_name) AS subquery
WHERE condition;


11. 条件表达式
使用 CASE

SELECT column1,CASEWHEN condition1 THEN 'result1'WHEN condition2 THEN 'result2'ELSE 'default'END AS new_column
FROM table_name;


12. 事务管理


开始事务

START TRANSACTION;

提交事务

COMMIT;


回滚事务

ROLLBACK;


13. 备份与恢复


备份

mysqldump -u username -p database_name > backup_file.sql

恢复

mysql -u username -p database_name < backup_file.sql


14. 用户管理
创建用户

CREATE USER 'username'@'host' IDENTIFIED BY 'password';

授予权限

GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'host';

撤销权限

REVOKE ALL PRIVILEGES ON database_name.* FROM 'username'@'host';

删除用户

DROP USER 'username'@'host';


15. 表和数据库信息

查看表结构

DESCRIBE table_name;

查看数据库列表

SHOW DATABASES;

查看表列表

SHOW TABLES;

查看表的索引

SHOW INDEX FROM table_name;

查看表的创建语句

SHOW CREATE TABLE table_name;

16. 查询优化

查看查询计划

EXPLAIN SELECT * FROM table_name WHERE condition;

查看慢查询日志

SHOW VARIABLES LIKE 'slow_query_log';

启用慢查询日志:

SET GLOBAL slow_query_log = 'ON';

查看当前的数据库状态

SHOW STATUS;

17. 其他实用操作

计算字段的平均值和总和

SELECT column1, AVG(column2), SUM(column2) FROM table_name GROUP BY column1;

使用 GROUP_CONCAT 函数

SELECT column1, GROUP_CONCAT(column2) FROM table_name GROUP BY column1;

这些 SQL 语句和技巧覆盖了数据库操作的广泛领域,从基础查询到高级管理和优化。掌握这些可以帮助你更高效地管理和操作 MySQL 数据库。

相关文章:

MySQL 常用 SQL 语句大全

1. 基本查询 查询所有记录和字段 SELECT * FROM table_name; 查询特定字段 SELECT column1, column2 FROM table_name; 查询并限制结果 SELECT column1, column2 FROM table_name LIMIT 10; 条件查询 SELECT column1, column2 FROM table_name WHERE condition; 模糊匹…...

[Spring] Spring事务与事务的传播

&#x1f338;个人主页:https://blog.csdn.net/2301_80050796?spm1000.2115.3001.5343 &#x1f3f5;️热门专栏: &#x1f9ca; Java基本语法(97平均质量分)https://blog.csdn.net/2301_80050796/category_12615970.html?spm1001.2014.3001.5482 &#x1f355; Collection与…...

Java 网络编程练习

InternetExercise1 package InternetExercise20240815;public class InternetExercise1 {public static void main(String[] args) {// 网络编程// 在网络通信协议下&#xff0c;不同计算机上面运行的程序&#xff0c;可以实现不同计算机上的数据传输// 网络编程三要素// 1.IP…...

中国科技统计年鉴,数据覆盖1991-2022年多年份

基本信息. 数据名称: 中国科技统计年鉴 数据格式: excel 数据时间: 1991-2022年 数据几何类型: xlsx 数据坐标系: WGS84 数据来源&#xff1a;国家统计局 数据预览&#xff1a; 数据可视化....

大模型的训练过程

大模型的训练是一个复杂的过程&#xff0c;涉及多个步骤和技术。下面我将概述大模型训练的主要流程&#xff0c;包括预训练、微调等关键阶段&#xff0c;并解释一些常见的技术和策略。 1. 数据准备 数据收集&#xff1a;收集大量多样化的数据&#xff0c;包括文本、图像、音频…...

4款ai在线改写工具,帮你轻松一键智能改写文章

在当今数字化内容创作的浪潮中&#xff0c;ai技术的应用为我们带来了极大的便利&#xff0c;尤其是在文章改写方面。以下将为大家详细分享四款出色的ai在线改写工具&#xff0c;从而帮助大家提升创作效率和质量。 ai在线改写工具一&#xff1a;智媒ai伪原创工具 它是一款备受好…...

Maven Mirror - 仓库镜像的介绍和配置

Maven Mirror&#xff08;Maven镜像&#xff09;是Maven构建工具中用于优化依赖下载速度和提高构建效率的一种机制。 在使用 Maven 构建应用程序时&#xff0c;Maven 默认会从 Maven 官方的中央仓库中下载依赖包。但是&#xff0c;在该仓库受到网络限制或访问速度过慢等问题时&…...

DevEcoStudio对Gitee进行变基与合并

当尝试将本地分支的更改推送到远程仓库&#xff0c;但是远程仓库中的该分支已经有了您本地分支中没有的提交时&#xff0c;会出现这个提示。 具体来说&#xff0c;这个提示意味着&#xff1a; 推送被拒绝&#xff1a;不能直接将更改推送到远程仓库&#xff0c;因为远程仓库中…...

2024 NVIDIA Summer Camp Day1:构建RAG多模态AI Agent

下载材料和课件等 课程相关资料下载链接: https://pan.baidu.com/s/15Y-gmsfeYCgKF-M3TJZVgg?pwdfafe 提取码: fafe 1.课件 链接&#xff1a;https://pan.baidu.com/s/15JTy9CqnesXSlPiwwrUmjA?pwd1111 提取码&#xff1a;1111 2.phi3量化大模型 链接&#xff1a;http…...

微服务之间的通信?

微服务之间的通信是微服务架构中的关键部分&#xff0c;它决定了服务之间如何进行数据交换和协同工作。微服务架构通过将大型应用拆分成多个小型、独立的服务&#xff0c;每个服务专注于完成特定的业务功能&#xff0c;从而提高了系统的可伸缩性、可维护性和可靠性。以下是微服…...

Elasticsearch 聚合概览及示例

Elasticsearch 是一个强大的搜索引擎&#xff0c;除了提供搜索功能外&#xff0c;它还内置了丰富的聚合功能&#xff0c;允许用户对数据进行统计、分析和运算。聚合可以帮助我们理解数据的分布和统计特性&#xff0c;是数据探索和报告的重要工具。本文将介绍 Elasticsearch 中的…...

【抓包】- Fiddler抓包教程,使用Fiddle抓取B站视频;ffmpeg的使用方法

一、预准备&#xff1a;过滤器设置 打开fiddler后&#xff0c;清空内容&#xff0c;然后播放视频。 找到与B站视频资源相关的回应&#xff0c;而后在“原始&#xff08;raw&#xff09;”标签中查看它的host信息。 发现B站视频资源的服务器DNS地址为【*bilivideo.cn】、【*bi…...

Linux网络配置和维护命令(三)

文章目录 网络接口配置-network-scripts文件远程复制文件-scp定义主机名与IP地址的关系-hosts文件登录远程主机-sshIP/主机名配置DNS域名解析服务器-resolv.conf文件 本篇讲解&#xff1a;网络接口配置-network-scripts文件、远程复制文件-scp、定义主机、名与IP地址的关系-hos…...

代码随想录算法训练营第二天 |209.长度最小子数组; 59.螺旋矩阵|| ; 前缀和

今日任务 209.长度最小子数组; 59.螺旋矩阵|| 58.区间和 44.开发商购买土地 209.长度最小的子数组 题目建议&#xff1a; 本题关键在于理解滑动窗口&#xff0c;这个滑动窗口看文字讲解 还挺难理解的&#xff0c;建议大家先看视频讲解。 拓展题目可以先不做。 题目链接&#xf…...

Go语言基础--数据类型(整型、字符型)

转义字符 常用的转义字符有如下: 1)\t : 表示一个制表符&#xff0c;通常使用它可以排版。 2)\n&#xff1a;换行符 3)\\&#xff1a;一个\ 4) \"&#xff1a;一个" 5)\r&#xff1a;一个回车 数据类型概述 在 Go 编程语言中&#xff0c;数据类型用于声明函数和变量…...

SpringBoot配置--Profile

目录 使用profile 的原因&#xff1f; proflie 的配置方式 多profile文件方式 profile 激活方式 1 配置文件 2 命令行参数 小结 使用profile 的原因&#xff1f; 用来完成不同环境下&#xff0c;配置动态切换功能的&#xff08;具体什么意思呢&#xff1f;假设你在A电脑…...

在Go中理解栈和先进先出原则

Go是一种功能强大的编程语言&#xff0c;提供了丰富的数据结构和算法。堆栈是计算机科学中的基本数据结构之一。在本博文中&#xff0c;我们将探讨如何在 Go 中实现和使用堆栈&#xff0c;以及堆栈如何遵循先进先出 (FIFO) 原则。 首先&#xff0c;让我们来看看堆栈是什么以及它…...

Ted靶机渗透测试

一、靶机下载地址 Ted: 1 ~ VulnHub 二、信息收集 1、主机发现 # 使用命令 nmap 192.168.145.0/24 -sn | grep -B 2 "00:0C:29:E2:36:FA" 2、端口扫描 # 使用命令 nmap 192.168.145.214 -p- -sV 3、指纹识别 # 使用命令 whatweb "http://192.168.145.214&…...

【chart.js】折线图给点添加点击事件

var mychart new Chart( ctx,{ type:line", … options:{ hover:{ // 此处最重要&#xff0c;决定是否能选中绑定的点 mode:“nearest” } &#xff0c; onClick:function(event,elements){ // 此为 被点击 的点 firstelement elements[0] // 这个点 属于第几个数据集合…...

旧手机NAS方案

这里写目录标题 1、参考2、alpine-term-v16.0-release.apk下载安装3、电脑端ssh连接3、安装docker3.1 网络配置3.2 配置APK源 1、参考 【Docker与Termux】闲置旧安卓手机上的NAS无缝部署方案 https://blog.csdn.net/AnRanGeSi/article/details/138717589 【Alpine Term】Andr…...

Chapter03-Authentication vulnerabilities

文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...

安宝特方案丨XRSOP人员作业标准化管理平台:AR智慧点检验收套件

在选煤厂、化工厂、钢铁厂等过程生产型企业&#xff0c;其生产设备的运行效率和非计划停机对工业制造效益有较大影响。 随着企业自动化和智能化建设的推进&#xff0c;需提前预防假检、错检、漏检&#xff0c;推动智慧生产运维系统数据的流动和现场赋能应用。同时&#xff0c;…...

Opencv中的addweighted函数

一.addweighted函数作用 addweighted&#xff08;&#xff09;是OpenCV库中用于图像处理的函数&#xff0c;主要功能是将两个输入图像&#xff08;尺寸和类型相同&#xff09;按照指定的权重进行加权叠加&#xff08;图像融合&#xff09;&#xff0c;并添加一个标量值&#x…...

全球首个30米分辨率湿地数据集(2000—2022)

数据简介 今天我们分享的数据是全球30米分辨率湿地数据集&#xff0c;包含8种湿地亚类&#xff0c;该数据以0.5X0.5的瓦片存储&#xff0c;我们整理了所有属于中国的瓦片名称与其对应省份&#xff0c;方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

python报错No module named ‘tensorflow.keras‘

是由于不同版本的tensorflow下的keras所在的路径不同&#xff0c;结合所安装的tensorflow的目录结构修改from语句即可。 原语句&#xff1a; from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后&#xff1a; from tensorflow.python.keras.lay…...

高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数

高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...

用机器学习破解新能源领域的“弃风”难题

音乐发烧友深有体会&#xff0c;玩音乐的本质就是玩电网。火电声音偏暖&#xff0c;水电偏冷&#xff0c;风电偏空旷。至于太阳能发的电&#xff0c;则略显朦胧和单薄。 不知你是否有感觉&#xff0c;近两年家里的音响声音越来越冷&#xff0c;听起来越来越单薄&#xff1f; —…...

QT3D学习笔记——圆台、圆锥

类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体&#xff08;对象或容器&#xff09;QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质&#xff08;定义颜色、反光等&#xff09;QFirstPersonC…...

LangChain知识库管理后端接口:数据库操作详解—— 构建本地知识库系统的基础《二》

这段 Python 代码是一个完整的 知识库数据库操作模块&#xff0c;用于对本地知识库系统中的知识库进行增删改查&#xff08;CRUD&#xff09;操作。它基于 SQLAlchemy ORM 框架 和一个自定义的装饰器 with_session 实现数据库会话管理。 &#x1f4d8; 一、整体功能概述 该模块…...

嵌入式常见 CPU 架构

架构类型架构厂商芯片厂商典型芯片特点与应用场景PICRISC (8/16 位)MicrochipMicrochipPIC16F877A、PIC18F4550简化指令集&#xff0c;单周期执行&#xff1b;低功耗、CIP 独立外设&#xff1b;用于家电、小电机控制、安防面板等嵌入式场景8051CISC (8 位)Intel&#xff08;原始…...