推荐理由
不要只学习“一般的”SQL,通过世界顶级的数据库平台(用于企业数据库的Oracle和用于桌面数据库的Microsoft Access)来学习SQL并获得成果。
本书根据John Patrick在美国加州大学伯克利分校讲授的SQL课程编写,精确地阐述了如何在需要的时候从任意应用中(从临时报表到数据仓库)检索数据。本书针对Oracle、Access和SQL标准的最新版本彻底更新,包含了比以前更多的练习、技术和解决方案。即便你之前从没有使用过数据库,也能够学会如何编写易于理解、验证,修改和扩展的SQL查询。
本书主要内容:
编写简单的SQL语句用来检索、存储或修改数据。
创建从多个表中获取信息的复杂查询。
创建和编辑自己的表。
总结数据;基本知识和高级技巧。
保证数据的完整性。
创建更加高效和性能更高的查询。
使用union、子查询、自连接、交叉连接、内连接和外连接。
使用Oracle数据库字典。
内容简介
SQL表示Structured Query Language,即结构化查询语言,是一种数据库语言,也是最重要的计算机语言之一。
本书根据John J.Patrick在美国加州大学伯克利分校讲授的SQL课程编写,详细介绍与SQL相关的概念和技术。书中的每一个概念都用了一个SQL范例进行说明。在大多数情况下都设置了一个任务,然后给出了完成这项任务的SQL代码。本书还展示了数据的原表和结果表。全书共有200多个例子。其中的每一部分都是独立的。读者可以依次阅读本书或者选择性地阅读需要的部分。
本书适合想要学习和掌握SQL的读者阅读,尤其适合高等院校计算机专业学生学习使用,也可供IT专业人员参考。
本书作者
John J.Patrick是关系数据库技术方面的计算机专家和软件开发者。他在美国加州大学伯克利分校讲授SQL基础和其他数据库课程,在Bank of America、Chevron、Kaiser Permanente等著名公司从事过20多年的软件开发工作。
目录
译者序
前言
第1章 在表中存储信息
第2章 从表中获取信息
第3章 where子句中的复合条件
第4章 保存结果
第5章 数据字典和其他Oracle主题
第6章 创建自己的表
第7章 格式、序列和索引
第8章 数据完整性
第9章 行函数
第10章 使用行函数
第11章 汇总数据
第12章 控制汇总级别
第13章 内连接
第14章 外连接
第15章 union和unioncall
第16章 交叉连接和自连接
第17章 在产品数据库中组合表
第18章 if-then-else、参数查询和子查询
第19章 多用户环境
第20章 SQL设计
附录A 获取和安装Oracle
附录B Oracle快速入门
附录C Access快速入门
附录D Lunches数据库的图
先读为快
第1章 在表中存储信息
在关系数据库中,所有的数据都存储在表中,并且所有的结果都在表中表示。在本章中,我们详细地学习表。
简介
1-1 什么是SQL
SQL表示Structured Query Language(结构化查询语言)。它读作“S-Q-L”,也可以读作“se-quel”。
SQL是一种设计用来从存储在关系数据库中的数据获取信息的语言。稍后我们将介绍什么是关系数据库。现在,我们可以把它看作是在计算机上组织大量数据的一种方法。SQL允许我们从一个巨大的数据集合中找到想要的信息。本书的目的是介绍如何从数据库获取想要的信息。
SQL和其他的大多数语言不同。使用SQL的时候,我们描述想要的信息的类型。然后,计算机确定用来获取数据的最佳过程并且执行这个过程。这叫做声明式计算机语言(declarative computer language),因为其关注点在结果上:我们指定结果应该看起来像什么样子。计算机允许使用任何处理方法,只要它能得到正确的结果。
大多数其他计算机语言是过程式的(procedural),如C、Cobol、Java、汇编语言、Fortran、Visual Basic等。我们可以使用这些语言描述应用于数据的过程,而无须描述结果。结果是将过程应用到数据后所得到的任何东西。
我们用类比来比较这两种方法。假设我清晨去一家咖啡店。如果使用SQL支持的声明式方法,我就可以说:“我想要一杯咖啡和一个多纳圈。”而使用过程式方法,我不能那样说,我必须说出如何得到结果,并且给出获得结果的一个特定过程。也就是说,必须说出如何制作咖啡和多纳圈。因此,对于咖啡,我必须说:“将一些烘烤好的咖啡豆磨成粉,添加开水,冲泡一会儿,再将它倒入一个茶杯,然后给我。”对于多纳圈,我必须读出菜谱中记录的制作方法。显然,声明式方法更贴近我们通常的说话方式,并且它更易于为大多数人所使用。
……