《SQL必知必会》简介:

SQL语法简洁,使用方式灵活,功能强大,已经成为当今程序员不可或缺的技能。

本书是深受世界各地读者欢迎的SQL经典畅销书,内容丰富,文字简洁明快,针对Oracle、SQL Server、MySQL、DB2、PostgreSQL、SQLite等各种主流数据库提供了大量简明的实例。与其他同类图书不同,它没有过多阐述数据库基础理论,而是专门针对一线软件开发人员,直接从SQL SELECT开始,讲述实际工作环境中最常用和最必需的SQL知识,实用性极强。通过本书,读者能够从没有多少SQL经验的新手,迅速编写出世界级的SQL!

本书是麻省理工学院、伊利诺伊大学等众多大学的参考教材。除了作为教程之外,独特的编排方式还使本书成为方便的快速查询手册。

作者为本书专门开设了网站,提供下载、勘误和答疑:

http://forums.forta.com/threads.cfm?forumid=A1031720-3048-80A9-EF986F59D2959184

《SQL必知必会》摘录:

第1章 了解SQL 【数据库】保存有组织的数据的容器(通常是一个文件或一组文件)。 【表】某种特定类型数据的结构化清单。 在相同数据库中不能两次使用相同的表名,但在不同的数据库中却可以使用相同的表名。 【模式】关于数据库和表的布局及特性的信息。 【列】表中的一个字段。所有表都是由一个或多个列组成的。 【数据类型】所容许的数据的类型。每个表列都有相应的数据类型,它限制该列中存储的数据。 【行】表中的一条记录。 【主键】一列(或一组列),其值能够唯一标识表中的每一行。 表中的任何列都可以作为主键,只要它满足以下条件: 任意两行都不具有相同的主键值; 每个行都必须具有一个主键值(不允许NULL值); 主键列中的值不允许修改或更新; 主键值不能重用。 也可以一起使用多个列作为主键。在使用多列作为主键时,上述条件必须应用到构成主键的所有列,所有列值的组合必须时唯一的(但单个列的值可以不唯一)。 【SQL】是结构化查询语言。一种专门用来与数据库通信的语言。 第2章 检索数据 【关键字】作为SQL组成部分的保留字。关键字不能用作表或列的名字。 多条SQL语句必须以分号分隔。多数DBMS不需要在单条SQL语句后加分号。 第3章 排序检索数据 如果不明确规定排序顺序,则不应该假定检索出的数据的顺序有意义。 【子句】一个子句通常由一个关键字加上所提供的数据组成。 在指定一条order by子句时,应保证它是select语句中最后一条子句。该子句的次序不对将会出现错误信息。 通过非选择列进行排序。通常,order by子句中使用的列将是为显示所选择的列。但是,并不一定要这样,用非检索的列排序数据是完全合法的。 为了按多个列排序,简单指定列名,列名之间用逗号分开即可。 ...

《SQL必知必会》目录:

目    录
第1课  了解SQL  1
1.1  数据库基础  1
1.2  什么是SQL  6
1.3  动手实践  7
1.4  小结  8
第2课  检索数据  9
2.1  SELECT语句  9
2.2  检索单个列  10
2.3  检索多个列  12
2.4  检索所有列  13
2.5  检索不同的值  14
2.6  限制结果  15
2.7  使用注释  18
2.8  小结  20
第3课  排序检索数据  21
3.1  排序数据  21
3.2  按多个列排序  23
3.3  按列位置排序  24
3.4  指定排序方向  25
3.5  小结  28
第4课  过滤数据  29
4.1  使用WHERE子句  29
4.2  WHERE子句操作符  31
4.3  小结  36
第5课  高级数据过滤  37
5.1  组合WHERE子句  37
5.2  IN操作符  41
5.3  NOT操作符  43
5.4  小结  45
第6课  用通配符进行过滤  46
6.1  LIKE操作符  46
6.2  使用通配符的技巧  53
6.3  小结  53
第7课  创建计算字段  54
7.1  计算字段  54
7.2  拼接字段  55
7.3  执行算术计算  61
7.4  小结  63
第8课  使用数据处理函数  64
8.1  函数  64
8.2  使用函数  65
8.3  小结  73
第9课  汇总数据  74
9.1  聚集函数  74
9.2  聚集不同值  81
9.3  组合聚集函数  83
9.4  小结  83
第10课  分组数据  84
10.1  数据分组  84
10.2  创建分组  85
10.3  过滤分组  87
10.4  分组和排序  90
10.5  SELECT子句顺序  92
10.6  小结  92
第11课  使用子查询  93
11.1  子查询  93
11.2  利用子查询进行过滤  93
11.3  作为计算字段使用子查询  98
11.4  小结  100
第12课  联结表  101
12.1  联结  101
12.2  创建联结  104
12.3  小结  111
第13课  创建高级联结  112
13.1  使用表别名  112
13.2  使用不同类型的联结  113
13.3  使用带聚集函数的联结  119
13.4  使用联结和联结条件  121
13.5  小结  121
第14课  组合查询  122
14.1  组合查询  122
14.2  创建组合查询  123
14.3  小结  129
第15课  插入数据  130
15.1  数据插入  130
15.2  从一个表复制到另一个表  137
15.3  小结  138
第16课  更新和删除数据  139
16.1  更新数据  139
16.2  删除数据  141
16.3  更新和删除的指导原则  143
16.4  小结  144
第17课  创建和操纵表  145
17.1  创建表  145
17.2  更新表  150
17.3  删除表  153
17.4  重命名表  153
17.5  小结  154
第18课  使用视图  155
18.1  视图  155
18.2  创建视图  158
18.3  小结  165
第19课  使用存储过程  166
19.1  存储过程  166
19.2  为什么要使用存储过程  167
19.3  执行存储过程  169
19.4  创建存储过程  170
19.5  小结  174
第20课  管理事务处理  175
20.1  事务处理  175
20.2  控制事务处理  177
20.3  小结  182
第21课  使用游标  183
21.1  游标  183
21.2  使用游标  184
21.3  小结  189
第22课  高级SQL特性  190
22.1  约束  190
22.2  索引  197
22.3  触发器  199
22.4  数据库安全  201
22.5  小结  202
附录A  样例表脚本  203
附录B  流行的应用程序  210
附录C  SQL语句的语法  223
附录D  SQL数据类型  228
附录E  SQL保留字  234
常用SQL语句速查  238
索引  240
· · · · · ·