100条牛批的MySql Sql语句排行榜

目录

一、基本查询

1.1 选择所有记录:

1.2 选择特定列:

1.3 过滤记录:

1.4 排序记录:

1.5 限制记录数:

1.6 统计记录数:

1.7 求和:

1.8 平均值:

1.9 最大值:

1.10 最小值:

二、多表查询

2.1 内连接:

2.2 左连接:

2.3 右连接:

2.4 全连接:

2.5 子查询:

2.6 交叉连接:

2.7 自连接:

三、数据操作

3.1 插入记录:

3.2 批量插入:

3.3 更新记录:

3.4 删除记录:

3.5 替换记录:

3.6 插入选择记录:

3.7 按条件删除:

3.8 清空表:

四、索引和视图

4.1 创建索引:

4.2 删除索引:

4.3 创建视图:

4.4 删除视图:

五、存储过程和触发器

5.1 创建存储过程:

5.2 调用存储过程:

5.3 创建触发器:

六、高级查询

6.1 分组统计:

6.2 分组过滤:

6.3 分页查询:

6.4 联合查询:

6.5 联合查询并去重:

6.6 递归查询:

6.7 窗口函数:

七、性能优化

7.1 分析查询:

7.2 查看索引:

7.3 创建复合索引:

7.4 删除复合索引:

八、数据库管理

8.1 创建数据库:

8.2 删除数据库:

8.3 备份数据库:

8.4 恢复数据库:

九、字符串操作

9.1 字符串长度:

9.2 字符串拼接:

9.3 子字符串:

9.4 替换字符串:

9.5 字符串转大写:

9.6 字符串转小写:

十、日期时间操作

10.1 当前日期和时间:

10.2 当前日期:

10.3 当前时间:

10.4 日期加天数:

10.5 日期减天数:

10.6 日期差:

10.7 提取年:

10.8 提取月:

10.9 提取日:

10.10 提取小时:

10.11 提取分钟:

10.12提取秒:

十一、数据类型转换

11.1 整数转字符串:

11.2 字符串转整数:

11.3 字符串转日期:

11.4 日期转字符串:

11.5 字符串转时间:

十二、安全和权限

12.1 创建用户:

12.2 删除用户:

12.3 授予权限:

12.4 撤销权限:

12.5 显示用户权限:

12.6 刷新权限:

十三、JSON操作

13.1 创建JSON列:

13.2 插入JSON数据:

13.3 查询JSON数据:

13.4 更新JSON数据:

13.5 删除JSON键值:

十四、其他有用的语句

14.1 查询表结构:

14.2 查询数据库中的所有表:

14.3 查询表的创建语句:

14.4 查询数据库的所有列:

14.5 查询表中的所有索引:

14.6 查询表的大小:

十五、锁和事务

15.1 开启事务:

15.2 提交事务:

15.3 回滚事务:

15.4 表锁定:

15.5 表解锁:

十六、性能调优

16.1 添加列的默认值:

16.2 删除列的默认值:

16.3 重命名表:

16.4 重命名列:

16.5 修改列类型:

16.6 添加新列:

16.7 删除列:

16.8 优化表:


以下是100条非常有用的MySQL SQL语句,涵盖了常见的查询、数据操作、性能优化和高级功能等各方面的使用:

一、基本查询

1.1 选择所有记录

SELECT * FROM table_name;

1.2 选择特定列

SELECT column1, column2 FROM table_name;

1.3 过滤记录

SELECT * FROM table_name WHERE condition;

1.4 排序记录

SELECT * FROM table_name ORDER BY column_name ASC|DESC;

1.5 限制记录数

SELECT * FROM table_name LIMIT 10;

1.6 统计记录数

SELECT COUNT(*) FROM table_name;

1.7 求和

SELECT SUM(column_name) FROM table_name;

1.8 平均值

SELECT AVG(column_name) FROM table_name;

1.9 最大值

SELECT MAX(column_name) FROM table_name;

1.10 最小值

SELECT MIN(column_name) FROM table_name;

二、多表查询

2.1 内连接

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

2.2 左连接

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

2.3 右连接

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

2.4 全连接

SELECT * FROM table1 
FULL OUTER JOIN table2 ON table1.column = table2.column;

2.5 子查询

SELECT * FROM table_name 
WHERE column_name 
IN (SELECT column_name FROM another_table);

2.6 交叉连接

SELECT * FROM table1 CROSS JOIN table2;

2.7 自连接

SELECT * FROM table_name AS a, table_name AS b WHERE a.column = b.column;

三、数据操作

3.1 插入记录

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

3.2 批量插入

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

3.3 更新记录

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

3.4 删除记录

DELETE FROM table_name WHERE condition;

3.5 替换记录

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

3.6 插入选择记录

INSERT INTO table_name1 (column1, column2) 
SELECT column1, column2 FROM table_name2 WHERE condition;

3.7 按条件删除

DELETE FROM table_name WHERE condition;

3.8 清空表

TRUNCATE TABLE table_name;

四、索引和视图

4.1 创建索引

CREATE INDEX index_name ON table_name (column1, column2);

4.2 删除索引

DROP INDEX index_name ON table_name;

4.3 创建视图

CREATE VIEW view_name AS SELECT column1, column2 
FROM table_name WHERE condition;

4.4 删除视图

DROP VIEW view_name;

五、存储过程和触发器

5.1 创建存储过程

CREATE PROCEDURE procedure_name (IN parameter INT)
BEGIN-- SQL Statements
END;

5.2 调用存储过程

CALL procedure_name(parameter);

5.3 创建触发器

CREATE TRIGGER trigger_name BEFORE|AFTER INSERT|UPDATE|DELETE ON table_name
FOR EACH ROW
BEGIN-- SQL Statements
END;

六、高级查询

6.1 分组统计

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

6.2 分组过滤

SELECT column_name, COUNT(*) FROM table_name 
GROUP BY column_name HAVING COUNT(*) > 1;

6.3 分页查询

SELECT * FROM table_name LIMIT 10 OFFSET 20;

6.4 联合查询

SELECT column_name FROM table1 UNION SELECT column_name FROM table2;

6.5 联合查询并去重

SELECT column_name FROM table1 
UNION DISTINCT SELECT column_name FROM table2;

6.6 递归查询

WITH RECURSIVE cte AS (SELECT column FROM table WHERE conditionUNION ALLSELECT column FROM table, cte WHERE condition
)
SELECT * FROM cte;

6.7 窗口函数

SELECT column_name, 
ROW_NUMBER() OVER (PARTITION BY column ORDER BY column) AS row_num 
FROM table_name;

七、性能优化

7.1 分析查询

EXPLAIN SELECT * FROM table_name;

7.2 查看索引

SHOW INDEX FROM table_name;

7.3 创建复合索引

CREATE INDEX index_name ON table_name (column1, column2);

7.4 删除复合索引

DROP INDEX index_name ON table_name;

八、数据库管理

8.1 创建数据库

CREATE DATABASE database_name;

8.2 删除数据库

DROP DATABASE database_name;

8.3 备份数据库

mysqldump -u username -p database_name > backup_file.sql;

8.4 恢复数据库

mysql -u username -p database_name < backup_file.sql;

九、字符串操作

9.1 字符串长度

SELECT LENGTH(column_name) FROM table_name;

9.2 字符串拼接

SELECT CONCAT(column1, column2) FROM table_name;

9.3 子字符串

SELECT SUBSTRING(column_name, start, length) FROM table_name;

9.4 替换字符串

SELECT REPLACE(column_name, 'old_string', 'new_string') FROM table_name;

9.5 字符串转大写

SELECT UPPER(column_name) FROM table_name;

9.6 字符串转小写

SELECT LOWER(column_name) FROM table_name;

十、日期时间操作

10.1 当前日期和时间

SELECT NOW();

10.2 当前日期

SELECT CURDATE();

10.3 当前时间

SELECT CURTIME();

10.4 日期加天数

SELECT DATE_ADD(NOW(), INTERVAL 10 DAY);

10.5 日期减天数

SELECT DATE_SUB(NOW(), INTERVAL 10 DAY);

10.6 日期差

SELECT DATEDIFF(date1, date2);

10.7 提取年

SELECT YEAR(date_column) FROM table_name;

10.8 提取月

SELECT MONTH(date_column) FROM table_name;

10.9 提取日

SELECT DAY(date_column) FROM table_name;

10.10 提取小时

SELECT HOUR(time_column) FROM table_name;

10.11 提取分钟

SELECT MINUTE(time_column) FROM table_name;

10.12提取秒

SELECT SECOND(time_column) FROM table_name;

十一、数据类型转换

11.1 整数转字符串

SELECT CAST(column_name AS CHAR) FROM table_name;

11.2 字符串转整数

SELECT CAST(column_name AS UNSIGNED) FROM table_name;

11.3 字符串转日期

SELECT CAST(column_name AS DATE) FROM table_name;

11.4 日期转字符串

SELECT DATE_FORMAT(date_column, '%Y-%m-%d') FROM table_name;

11.5 字符串转时间

SELECT CAST(column_name AS TIME) FROM table_name;

十二、安全和权限

12.1 创建用户

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

12.2 删除用户

DROP USER 'username'@'host';

12.3 授予权限

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

12.4 撤销权限

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

12.5 显示用户权限

SHOW GRANTS FOR 'username'@'host';

12.6 刷新权限

FLUSH PRIVILEGES;

十三、JSON操作

13.1 创建JSON列

CREATE TABLE table_name (id INT,data JSON
);

13.2 插入JSON数据

INSERT INTO table_name (id, data) 
VALUES (1, '{"key1": "value1", "key2": "value2"}');

13.3 查询JSON数据

SELECT JSON_EXTRACT(data, '$.key1') FROM table_name;

13.4 更新JSON数据

UPDATE table_name 
SET data = JSON_SET(data, '$.key1', 'new_value') 
WHERE id = 1;

13.5 删除JSON键值

UPDATE table_name SET data = JSON_REMOVE(data, '$.key1') WHERE id = 1;

十四、其他有用的语句

14.1 查询表结构

DESCRIBE table_name;

14.2 查询数据库中的所有表

SHOW TABLES;

14.3 查询表的创建语句

SHOW CREATE TABLE table_name;

14.4 查询数据库的所有列

SELECT COLUMN_NAME 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_SCHEMA = 'database_name' AND TABLE_NAME = 'table_name';

14.5 查询表中的所有索引

SHOW INDEX FROM table_name;

14.6 查询表的大小

SELECT table_name AS 'Table', 
ROUND((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024, 2) AS 'Size (MB)' 
FROM information_schema.TABLES WHERE table_schema = 'database_name';

十五、锁和事务

15.1 开启事务

START TRANSACTION;

15.2 提交事务

COMMIT;

15.3 回滚事务

ROLLBACK;

15.4 表锁定

LOCK TABLES table_name READ|WRITE;

15.5 表解锁

UNLOCK TABLES;

十六、性能调优

16.1 添加列的默认值

ALTER TABLE table_name ALTER column_name SET DEFAULT 'default_value';

16.2 删除列的默认值

ALTER TABLE table_name ALTER column_name DROP DEFAULT;

16.3 重命名表

RENAME TABLE old_table_name TO new_table_name;

16.4 重命名列

ALTER TABLE table_name CHANGE old_column_name new_column_name datatype;

16.5 修改列类型

ALTER TABLE table_name MODIFY column_name new_datatype;

16.6 添加新列

ALTER TABLE table_name ADD column_name datatype;

16.7 删除列

ALTER TABLE table_name DROP COLUMN column_name;

16.8 优化表

OPTIMIZE TABLE table_name;

以上是100条常用且有用的MySQL SQL语句,它们涵盖了数据库的各个方面,从基本查询到高级操作和性能优化,适用于各种实际应用场景。

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

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

相关文章

GD 32 流水灯

前言&#xff1a; 通过后面的学习掌握了一些逻辑架构的知识&#xff0c;通过复习的方式将学到的裸机任务架构的知识运用起来&#xff0c;同时巩固前面学到的知识&#xff0c;GPIO的配置等。 开发板上LED引脚使用示意图 注&#xff1a;此次LED灯的点亮凡是是高电平点亮&#xff…

如何解决ChromeDriver 126找不到chromedriver.exe问题

引言 在使用Selenium和ChromeDriver进行网页自动化时&#xff0c;ChromeDriver与Chrome浏览器版本不匹配的问题时有发生。最近&#xff0c;许多开发者在使用ChromeDriver 126时遇到了无法找到chromedriver.exe文件的错误。本文将介绍该问题的原因&#xff0c;并提供详细的解决…

【第一天】计算机网络 TCP/IP模型和OSI模型,从输入URL到页面显示发生了什么

TCP/IP模型和OSI模型 这两个模型属于计算机网络的体系结构。 OSI模型是七层模型&#xff0c;从上到下包括&#xff1a; 应用层&#xff0c;表示层&#xff0c;会话层&#xff0c;传输层&#xff0c;网络层&#xff0c;数据链路层&#xff0c;物理层 TCP/IP模型是四层模型&…

uniapp原生插件开发实战——iOS打开文件到自己的app

用原生开发获取文件的名称、路径等能力封装为一个插件包供前端使用 首先根据ios插件开发教程&#xff0c;创建一个插件工程&#xff0c;template 选framework 开始编写代码&#xff1a; iOS 9 及以下版本会调用以下方法&#xff1a; - (BOOL)application:(UIApplication *_N…

关键词查找【Boyer-Moore 算法】

1、【Boyer-Moore 算法】 【算法】哪种算法有分数复杂度&#xff1f;- BoyerMoore字符串匹配_哔哩哔哩_bilibili BM算法的精华就在于BM(text, pattern),也就是BM算法当不匹配的时候一次性可以跳过不止一个字符。即它不需要对被搜索的字符串中的字符进行逐一比较&#xff0c;而…

HTML前端面试题之<iframe>标签

面试题&#xff1a;iframe 标签的作用是什么?有哪些优缺点 ? 讲真&#xff0c;刷这道面试题之前我根本没有接触过iframe&#xff0c;网课没讲过&#xff0c;项目实战没用过&#xff0c;但却在面试题里出现了&#xff01;好吧&#xff0c;我只能说&#xff1a;前端路漫漫&…

2024年软件系统与信息处理国际会议(ICSSIP 2024)即将召开!

2024年软件系统与信息处理国际会议&#xff08;ICSSIP 2024&#xff09;将于2024年10月25-27日在中国昆明举行。引领技术前沿&#xff0c;共谋创新未来。ICSSIP 2024将汇聚来自世界各地的专家学者&#xff0c;他们将在会上分享最新的研究成果、技术突破及实践经验。会议议题涵盖…

DataEase一键部署:轻松搭建数据可视化平台

DataEase是一个开源的数据可视化和分析工具&#xff0c;旨在帮助用户轻松创建和共享数据仪表盘。它支持多种数据源&#xff0c;包括关系型数据库&#xff0c;文件数据源&#xff0c;NoSQL数据库等&#xff0c;提供强大的数据查询、处理和可视化功能。DataEase 不仅是一款数据可…

通信原理-思科实验四:静态路由项配置实验

实验四 静态路由项配置实验 一&#xff1a;实验内容 二&#xff1a;实验目的 三、实验原理 四、实验步骤 选择三个2811型号的路由器 R1、R2、R3 路由器默认只有两个快速以太网接口&#xff0c;为路由器R1和R3增加快速以太网接口模块NM-1FE-TX&#xff0c;安装后检查路由器的接…

【电源专题】结合锂电池相关资料和华为手机聊聊锂离子电池使用条件限制

在文章:【电源专题】锂电池的特点和工作原理 中我们讲到了一些关于锂电池种类和特点、工作原理等。但是对于锂离子电池使用条件限制却没有介绍,本文基于手机产商 锂离子电池使用条件-电池性能和应用介绍 | 华为官网 (huawei.com)提供的介绍文档再次深入学习锂离子电池的一些特…

bug+测试用例

bug的概念&#xff1a; 1.当且仅当规格说明是存在的并且正确&#xff0c;程序与规格说明之间的不匹配才是错误。 2.当需求规格说明书没有提到的功能&#xff0c;判断标准以最终用户为准&#xff1b;当程序没有实现其最终用户合理预期的功能要求时&#xff0c;就是软件错误 bug…

区块链浏览器开发指南分享

01 概括 区块链浏览器是联盟链上的一种数据可视化工具&#xff0c;用户可以通过web页面&#xff0c;直接在浏览器上查看联盟链的节点、区块、交易信息和子链信息、标识使用信息等&#xff0c;用以验证交易等区块链常用操作。 02功能模块 区块链网络概览 区块链网络概览显示…

【Linux】进程IO|系统调用|open|write|文件描述符fd|封装|理解一切皆文件

目录 ​编辑 前言 系统调用 open 参数flags 参数mode write 追加方式 read close 文件描述符 打开多个文件并观察其文件描述符 C语言文件操作 理解一切皆文件 理解open操作 前言 各类语言的文件操作其实是对系统调用的封装 我们经常说&#xff0c;创建一个文件&a…

【数据结构】顺序表(杨辉三角、简单的洗牌算法)

&#x1f387;&#x1f389;&#x1f389;&#x1f389;点进来你就是我的人了 博主主页&#xff1a;&#x1f648;&#x1f648;&#x1f648;戳一戳&#xff0c;欢迎大佬指点&#xff01; 欢迎志同道合的朋友一起加油喔 &#x1f4aa;&#x1f4aa;&#x1f4aa; 谢谢你这么帅…

MySQL可重复读的隔离机制下是否彻底解决了幻读?

答案&#xff1a;没有彻底解决。 一、什么是幻读&#xff1f; 当同一个查询在不同时间产生不同的结果集时&#xff0c;事务中就会出现幻读问题。 幻读关注的是记录数量的不同。 不可重复读关注的是记录内容的不同。 二、快照读和当前读 InnoDB引擎的默认隔离级别是可重复读&…

音视频入门基础:H.264专题(17)——FFmpeg源码获取H.264裸流文件信息(视频压缩编码格式、色彩格式、视频分辨率、帧率)的总流程

音视频入门基础&#xff1a;H.264专题系列文章&#xff1a; 音视频入门基础&#xff1a;H.264专题&#xff08;1&#xff09;——H.264官方文档下载 音视频入门基础&#xff1a;H.264专题&#xff08;2&#xff09;——使用FFmpeg命令生成H.264裸流文件 音视频入门基础&…

Spark 运行架构

运行架构 Spark 框架的核心是一个计算引擎&#xff0c;整体来说&#xff0c;它采用了标准的 master-slave 结构。上图中的 Driver 表示 master &#xff0c;负责管理整个集群中的作业任务调度&#xff1b;Executor 则是 slave&#xff0c;负责实际执行任务&#xff1b; 核心组…

深入解析:百数平台图表联动功能设置与实战应用

在当今数据驱动的时代&#xff0c;图表的联动功能已成为数据分析的得力助手。通过深度整合各类图表&#xff0c;如柱形图、折线图、饼图、雷达图、条形图、透视图、面积图、双轴图、地图以及漏斗图等&#xff0c;我们实现了图表之间的无缝衔接&#xff0c;使得数据的呈现与探索…

Spring Boot的Web开发

目录 Spring Boot的Web开发 1.静态资源映射规则 第一种静态资源映射规则 2.enjoy模板引擎 3.springMVC 3.1请求处理 RequestMapping DeleteMapping 删除 PutMapping 修改 GetMapping 查询 PostMapping 新增 3.2参数绑定 一.支持数据类型: 3.3常用注解 一.Request…

【Ant Design Pro】快速上手

初始化 初始化脚手架&#xff1a;快速开始 官方默认使用 umi4&#xff0c;这里文档还没有及时更新&#xff08;不能像文档一样选择 umi 的版本&#xff09;&#xff0c;之后我选择 simple。 然后安装依赖。 在 package.json 中&#xff1a; "start": "cross-e…