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;
相关推荐
Nturmoils1 小时前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
渣波5 小时前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端
Jim6001 天前
【吃透 MySQL InnoDB连载】第 1 章・解密线上数据库高频故障
mysql
GreatSQL1 天前
gt-checksum v4.0.0 新功能解读系列文章(4):SSL 加密连接——数据校验传输安全再升级
mysql
倔强的石头_1 天前
KingbaseES 新版MySQL 兼容版体验:旧版迁移 + 功能实测
数据库
倔强的石头_4 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库
云技纵横4 天前
唯一索引 INSERT 死锁实战:5 秒复现交叉插入的 S 锁循环等待
sql·mysql
沉默王二4 天前
面试官:RAG 不用向量数据库,用 MySQL 硬扛?我:100 万向量不是很轻松?
mysql·面试·ai编程
冬奇Lab5 天前
每日一个开源项目(第134篇):Zvec - 阿里开源的嵌入式向量数据库,向量搜索界的 SQLite
数据库·人工智能·llm