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.mzph.cn/news/876101.shtml

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

相关文章

ClkLog:开源用户行为分析框架,让数据分析更轻松

ClkLog&#xff1a;开源用户行为分析框架&#xff0c;让数据分析更轻松 在数据驱动的时代&#xff0c;找到一个好用的用户行为分析工具真是难上加难。但是今天你有福了&#xff0c;开源免费的 ClkLog 就是你的不二选择&#xff01;本文将为你详细介绍 ClkLog 的功能特点、技术架…

Spark RPC框架详解

文章目录 前言Spark RPC模型概述RpcEndpointRpcEndpointRefRpcEnv 基于Netty的RPC实现NettyRpcEndpointRefNettyRpcEnv消息的发送消息的接收RpcEndpointRef的构造方式直接通过RpcEndpoint构造RpcEndpointRef通过消息发送RpcEndpointRef Endpoint的注册Dispatcher消息的投递消息…

聚焦民生服务 助力企业发展 区块链应用加速落地

聚焦民生服务&#xff0c;助力企业发展&#xff0c;区块链应用正在加速落地。这一趋势体现了区块链技术在多个领域的广泛应用和深远影响。以下是对这一主题的详细分析&#xff1a; 一、区块链在民生服务中的应用 政务服务 数据共享与打通&#xff1a;区块链技术利用其分布式账…

Python酷库之旅-第三方库Pandas(048)

目录 一、用法精讲 171、pandas.Series.nlargest方法 171-1、语法 171-2、参数 171-3、功能 171-4、返回值 171-5、说明 171-6、用法 171-6-1、数据准备 171-6-2、代码示例 171-6-3、结果输出 172、pandas.Series.nsmallest方法 172-1、语法 172-2、参数 172-3、…

自动化测试 - selenium 环境搭建

在进行自动化测试时&#xff0c;Selenium 是一个非常强大的工具&#xff0c;在使用前需要做一些环境准备。 1. 配置 Chromedriver 访问 Chrome 浏览器的官方网站&#xff08;https://www.google.cn/chrome/&#xff09;&#xff0c;下载并安装 Chrome 浏览器。 接下来&#x…

html必知必会-html内嵌JavaScript和文件路径

文章目录 HTML JavaScriptHTML <script> 标签JavaScript 的简单示例HTML <noscript> 标签HTML 文件路径绝对文件路径相对文件路径总结 HTML JavaScript JavaScript 使 HTML 页面更具动态性和交互性。 示例 <!DOCTYPE html> <html> <body><…

自训练和增量训练word2vec模型

1、自己准备训练语料文件 根据自己的业务场景准备训练数据&#xff0c;比如用户在商城上的同购行为序列或同浏览行为序列。 我们希望通过自己训练业务相关的语料word2vec模型来获得词嵌入、词相关性查询等。 1.1 准备语料库文件 # 示例&#xff1a;准备自己的一个大规模的语…

RDMA通信4:MR(Memory Region, 内存区域)基本概念和作用

MR简介 RDMA通信中MR(Memory Region)指的是由RDMA软件层在内存中规划出的一片区域&#xff0c;用于存放收发的数据。IB协议中&#xff0c;用户在申请完用于存放数据的内存区域之后&#xff0c;都需要通过调用IB框架提供的API注册MR&#xff0c;才能让RDMA网卡访问这片内存区域…

2.1、matlab绘图汇总(图例、标题、坐标轴、线条格式、颜色和散点格式设置)

1、前言 在 MATLAB 中进行绘图是一种非常常见且实用的操作&#xff0c;可以用来可视化数据、结果展示、分析趋势等。通过 MATLAB 的绘图功能&#xff0c;用户可以创建各种类型的图形&#xff0c;包括线图、散点图、柱状图、曲线图等&#xff0c;以及三维图形、动画等复杂的可视…

数据中台 | 3分钟带你读懂数据中台的由来

1.数据中台产生的原因 数据中台的概念起源于中国阿里巴巴集团提出的“大中台&#xff0c;小前台”战略。这一理念的核心在于通过构建强大的中台体系&#xff0c;为前端的快速创新和个性化业务需求提供强有力的支持。具体到数据中台&#xff0c;其设计初衷是为了应对企业内部数…

springboot在加了mapper之后报错

springboot在加了mapper之后报错 最后发现是spring boot版本不兼容&#xff0c;spring-boot-starter-parent换成3.0.5之后可以了

计算机基础-IO

一、裸机中的IO 我们先看下计算机的组成部分&#xff1a; 从图中我们很清楚的看到Input/Output 即为 IO&#xff0c;也就是计算机主机和外部设备进行信息的交换。 这种交换可能是磁盘IO也有可能是网络IO。 二、操作系统中的IO 操作系统分为内核态和用户态&#xff0c;且默认…

活动预告|8月3日 Streaming Lakehouse Meetup · Online 与你相约!

随着大数据分析技术的发展&#xff0c;越来越多的企业采用了数据湖架构。基于 Lakehouse 的架构优势&#xff0c;结合 Flink 的 Streaming 实时流处理能力&#xff0c;Flink 推出了新一代的“Streaming Lakehouse”技术。这一技术旨在能够让数据在湖上自由流动&#xff0c;为用…

js 习题 3

文章目录 绪论12345678910 求最长公共后缀111213 最大公约数1415结语 绪论 『虽有遗憾&#xff0c;绝不后悔。』—— 「古剑奇谭」 1 let buf"";process.stdin.on("readable",function(){let chunkprocess.stdin.read();if(chunk){bufchunk.toString();} …

从零开始创建vue3项目——包含项目初始化、element-plus、eslint、axios、router、pinia、echarts

项目启动 初始化vue3项目 这里建议先下载pnpm&#xff0c;下载速度更快&#xff0c;如果还没下载可以使用 npm install -g pnpm 如果遇到报错问题&#xff0c;如下 可以在命令行输入下面的指令以切换到淘宝镜像源 npm config set registry https://registry.npm.taobao.org…

2024最佳游戏引擎排行

游戏产业几十年来一直是一个大生意&#xff0c;而且发展势头迅猛。据估计&#xff0c;全球游戏市场在 2025 年每年将达到 5031.4 亿美元&#xff0c;2023 年为 3960 亿美元。 尽管如今有市面上有各种各样的解决方案&#xff0c;但游戏开发人员和管理者在选择适合他们需求的游戏…

kettle从入门到精通 第八十课 ETL之kettle kettle中的json对象字段写入postgresql中的json字段

场景&#xff1a;源数据库表为mysql的其中有json字段&#xff0c;通过kettle 查询出来 插入到目标数据库 postgresql中&#xff0c;对应的表中也有json字段。。但是报错&#xff0c;提示kettle查询出来是varchar的的字段&#xff0c;无法插入到目标数据库中。 1、创建测试表。 …

golang设置远程调试

1. 目标机器构建安装dlv https://github.com/go-delve/delve go build之后将编译号的dlv命令路径添加到PATH里 2. 目标机器下载源代码并且运行dlv dlv debug --headless --listen:2345 --api-version2 --accept-multiclient 3.本机添加go remote 4. 设置断点即可

Cesium高性能渲染海量矢量建筑

0、数据输入为类似Geojson的压缩文件和纹理图片&#xff0c;基于DrawCommand命令绘制&#xff1b; 1、自定义建筑几何&#xff0c;包括顶点、法线、纹理等&#xff1b; 2、自定义纹理贴图&#xff0c;包括按建筑高度贴图、mipmap多级纹理&#xff1b; 3、自定义批处理表&…