SQL单表操作详解:增删改查与聚合函数

需积分: 9 4 下载量 105 浏览量 更新于2024-09-08 收藏 424KB PDF 举报
"这篇文档是关于SQL语法的总结,主要关注单表操作,包括查询语句中的关键子句顺序、基本SQL语法(增删改查)、分组、排序、聚合函数以及分页查询。" 在SQL语言中,单表操作是数据库管理的基础,本文档详细阐述了这些操作的关键概念和语法。 1. 查询语句的关键字顺序和执行顺序: - **书写顺序**:SELECT -> FROM -> WHERE -> GROUP BY -> HAVING -> ORDER BY - **执行顺序**:FROM -> WHERE -> GROUP BY -> HAVING -> SELECT -> ORDER BY - `FROM`确定查询数据的来源,`WHERE`用于筛选满足条件的行,`GROUP BY`进行数据分组,`HAVING`对分组后的数据进行过滤,`SELECT`选择展示的列,最后`ORDER BY`对结果进行排序。 - `WHERE`和`HAVING`的区别在于,`WHERE`在分组前过滤数据,而`HAVING`在分组后过滤。 2. **基本SQL语法**: - **插入(INSERT)**:向表中插入新记录。如`INSERT INTO 表名(列1, 列2) VALUES(值1, 值2);` - **删除(DELETE)**:删除表中的记录。如`DELETE FROM 表名 WHERE 条件;`,无条件将删除所有记录。 - **更新(UPDATE)**:修改表中的数据。如`UPDATE 表名 SET 列1 = 值1, 列2 = 值2 WHERE 条件;`,无条件将更新所有记录。 - **查询(SELECT)**:获取数据。如`SELECT 列1, 列2 FROM 表名 WHERE 条件;`,可以使用`AS`定义别名,`DISTINCT`去除重复项,对列进行运算。 3. **排序、分组、聚合函数和分页查询**: - **排序(ORDER BY)**:按列进行升序(ASC,默认)或降序(DESC)排序,如`SELECT 列名 FROM 表名 ORDER BY 排序字段 ASC|DESC;` - **分组(GROUP BY)**:对数据进行横向分组,常与聚合函数配合使用,如`SELECT 列名 FROM 表名 GROUP BY 分组字段;` - **聚合函数**:如COUNT(), SUM(), AVG(), MAX(), MIN()等,用于对一组值进行计算并返回单一值。 - **分页查询(LIMIT or OFFSET)**:在MySQL中通常使用`LIMIT`和`OFFSET`来实现分页,例如`SELECT * FROM 表名 LIMIT 页大小 OFFSET (当前页-1) * 页大小;` 以上是SQL单表操作的核心知识点,掌握这些内容能帮助用户有效地处理和查询单个表的数据。对于更复杂的多表操作,通常涉及JOIN、子查询等高级技术,这些将在后续的文档中进行分享。