
SQL必知必会
本书介绍的 SQL 主要适用于以下系统(需要时会给出特殊说明和注释):
- IBM DB2 (包括云上 DB2)
- Microsoft SQL Server (包括 Microsoft SQL Server Express)
- MariaDB
- MySQL
- Oracle (包括 Oracle Express)
- PostgreSQL
- SQLite
本书所有数据库示例(或者创建数据库示例的SQL脚本例子)对这些DBMS都适用,它们可以在本书的网页上获得。
第1课 了解SQL
什么是 SQL,它为什么很有用,它能做什么事情。因为 SQL 是用来与数据库打交道的,所以,我们也复习了一些基本的数据库术语。
第2课 检索数据
使用SELECT语句从表中检索一个或多个数据列。
如何返回不同的值,如何注释代码。同时不好的消息是,复杂的SQL语句往往不够通用。下一课将讲授如何对检索出来的数据进行排序。
第3课 排序检索数据
如何使用SELECT语句的ORDER BY子句,根据需要排序检索出的数据。
第4课 过滤数据
如何使用SELECT语句的WHERE子句指定搜索条件。
第5课 高级数据过滤
组合WHERE子句以建立功能更强、更高级的搜索条件。 我们还将学习如何使用NOT和IN操作符。
第6课 用通配符进行过滤
什么是通配符、如何使用通配符,以及怎样使用 LIKE 操作符进行通配搜索,以便对数据进行复杂过滤。
第7课 创建计算字段
什么是计算字段,如何创建计算字段,以及如何从应用程序中使用别名引用它们。
第8课 使用函数处理数据
什么是函数,DBMS支持何种函数,以及如何使用这些函数;还将讲解为什么SQL函数的使用可能会带来问题。
第9课 汇总数据
什么是SQL的聚集函数,如何利用它们汇总表的数据。
第10课 分组数据
如何分组数据,以便汇总表内容的子集。这涉及两个新 SELECT语句子句:GROUP BY子句和HAVING子句。
第11课 使用子查询
什么是子查询,如何使用它们。
第12课 联结表
什么是联结,为什么使用联结,如何编写使用联结的 SELECT 语句。
第13课 创建高级联结
另外一些联结(包括它们的含义和使用方法),介绍如何使用表别名,如何对被联结的表使用聚集函数。
第14课 组合查询
如何利用UNION操作符将多条SELECT语句组合成一个结果集。
第15课 插入数据
如何利用SQL的INSERT语句将数据插入表中。
第16课 更新和删除数据
如何利用 UPDATE 和 DELETE 语句进一步操作表数据。
第17课 创建和操纵表
创建、更改和删除表的基本知识。
第18课 使用视图
什么是视图,它们怎样工作,何时使用它们;还将讲述如何利用视图简化前几课中执行的某些SQL操作。
第19课 使用存储过程
什么是存储过程,为什么要使用存储过程,如何使用存储过程,以及创建和使用存储过程的基本语法。
第20课 管理事务处理
什么是事务处理,如何利用COMMIT和ROLLBACK语句管理事务处理。
第21课 使用游标
什么是游标,如何使用游标。
第22课 高级SQL特性
几个高级数据处理特性:约束、索引和触发器。