SQL数据定义与查询:从基础到高级

需积分: 9 1 下载量 152 浏览量 更新于2024-08-15 收藏 420KB PPT 举报
"本资源详细介绍了SQL数据定义语句,主要关注如何使用SQL来创建和删除基表,同时也涵盖了数据查询、数据控制语句以及事务性控制命令的基础知识。" 在SQL中,数据定义语句(DDL)是构建和管理数据库结构的关键部分,包括创建和删除基表、视图以及索引。基表是数据库中的基本存储单元,用于存储数据。创建基表通常使用`CREATE TABLE`语句,该语句允许指定表的名称、列名、数据类型和其他属性,如约束条件。删除基表则使用`DROP TABLE`语句,但需谨慎操作,因为这将永久性地移除表及其所有数据。 数据查询语句(DQL)是SQL的核心,用于从一个或多个表中检索信息。`SELECT`语句是最常用的数据查询工具,可以用来选择一个或多个列,并根据特定条件过滤结果。例如,`SELECT prod_desc, cost FROM products_tbl WHERE prod_id='119'`会返回产品描述和成本,仅限于产品ID为119的行。`GROUP BY`用于对数据进行分组,而`ORDER BY`则用于排序结果。 SQL还包含数据控制语句(DCL),例如事务性控制命令。`COMMIT`用于保存事务中的更改,确保数据的一致性;`ROLLBACK`可以撤销所有未提交的更改,恢复到事务开始前的状态;`SAVEPOINT`允许在事务中设置撤消点,以便在需要时回滚到特定状态;`SET TRANSACTION`用于给事务命名,便于管理和跟踪。 操作符在SQL中扮演着重要角色。比较操作符如`=`, `<>`, `>`, `<`, `<=`, `>=`用于比较数据。算术运算符执行数学计算,包括加、减、乘、除。逻辑操作符如`IS NULL`检查值是否为空,`BETWEEN`用于判断值是否在指定范围内,`IN`检查值是否存在于一系列值中,`LIKE`用于模式匹配,`EXISTS`检测子查询是否存在满足条件的行,`UNIQUE`检查值是否唯一,`ALL`和`ANY`用于比较一组数据,而`AND`和`OR`用于组合条件。 举例来说,`WHERE salary BETWEEN 200 AND 300`将筛选出薪水在200到300之间的员工记录,而`WHERE sal IN (100, 200, 300)`则会找出薪水为100、200或300的员工。`IS NULL`可用于查询没有电话号码的员工,如`WHERE emp_phone IS NULL`。 SQL数据定义语句是构建和维护数据库结构的基础,而数据查询和控制语句则提供了对这些结构的强大操作和管理能力。熟悉这些语句和操作符对于有效地使用和管理关系数据库至关重要。