MySQL 知识点复习- 6.MySQL语法顺序

以下是 MySQL 中常用的查询语句构成部分及它们的一般顺序:

  1. SELECT - 用来指定需要选择的列。
  2. FROM - 指定数据来源的表。
  3. JOIN - 用来连接多张表。
  4. ON - 用来指定表连接时的条件(与 JOIN 搭配使用)。
  5. WHERE - 用来过滤记录的条件。
  6. GROUP BY - 用于依据某字段进行分组。
  7. HAVING - 用来进一步过滤分组后的记录。
  8. ORDER BY - 用来指定结果集的排序顺序。
  9. LIMIT - 用来限制返回记录的数量。
  10. UNION - 用来合并两个或多个 SELECT 语句的结果集。

例子: 不使用union时

sql 复制代码
SELECT column1, column2
FROM table_name
JOIN another_table ON table_name.id = another_table.table_id
WHERE condition
GROUP BY column1
HAVING condition
ORDER BY column2
LIMIT 10;

使用UNION

sql 复制代码
-- 第一个查询,使用 JOIN 和其他声明
SELECT column1, column2
FROM table_name
JOIN another_table ON table_name.id = another_table.table_id
WHERE condition
GROUP BY column1
HAVING condition

UNION

-- 第二个查询,使用 JOIN
SELECT a.column1, b.column2
FROM table1 a
JOIN table2 b ON a.id = b.foreign_id
WHERE a.some_condition;

-- 对合并后的结果进行排序和限制行数
ORDER BY column2
LIMIT 10;
相关推荐
星恒随风13 小时前
MySQL 从零入门(五):MySQL 内置函数详解——日期、字符串、数学函数与实战案例
linux·数据库·笔记·sql·mysql
吴名氏.15 小时前
Java转AI Agent教程(第十三周)混合检索与重排
java·数据库·人工智能·ai·ai agent
爱码少年15 小时前
Springboot下如何将CSV文件数据导入H2、Mysql数据库表
数据库·mysql·csv
2603_9696948516 小时前
【JavaWeb学习记录】MyBatis核心知识点与实战笔记:从入门到动态SQL
笔记·sql·学习·mysql·mybatis·javaweb·学习方法
可乐ea16 小时前
智能体记忆该拆成几层:笔记、记忆表示与注入上下文
服务器·数据库·笔记·ai智能体·提示词工程·上下文工程·记忆系统
阿义有问题17 小时前
MySQL 迁移达梦全流程实战:DTS 七步图解 + 对象名全大写适配(附踩坑清单)
数据库
猫猫不是喵喵.20 小时前
从0到1创建一个微服务项目
java·数据库·微服务·1024程序员节
lsc_blog21 小时前
听到优化风声,先准备能由自己掌控的事
数据库·分布式·中间件·职场和发展·重构
墨痕诉清风21 小时前
SSRF漏洞实战记录+OSS桶命令执行+MCP漏洞
linux·服务器·数据库
Ashe8131 天前
MySQL 慢日志先别急着加索引:三个指标能拦掉大半误判
数据库