本书主要介绍SQL的语法规则及在实际开发中的应用,并且对SQL在MySQL、MS SQL Server、Oracle和DB2中的差异进行了分析。本书分为3部分:第1部分为基础篇,主要讲解数据库对增、删、改、查等SQL的支持,给出了这些SQL的应用案例;第2部分为进阶篇,讲解了函数、子查询、表连接、不同DBMS中的SQL语法差异、SQL调优、NULL值处理、事务、开窗函数等高级技术;第3部分为案例篇,对前两部分的知识进行了综合运用。
本书是专门写给程序员的,直接从SQL语句入手,让读者快速掌握数据库开发的技能。
本书主要介绍SQL的语法规则及在实际开发中的应用,并且对SQL在MySQL、MS SQL Server、Oracle和DB2中的差异进行了分析。本书分为3部分:第1部分为基础篇,主要讲解数据库对增、删、改、查等SQL的支持,给出了这些SQL的应用案例;第2部分为进阶篇,讲解了函数、子查询、表连接、不同DBMS中的SQL语法差异、SQL调优、NULL值处理、事务、开窗函数等高级技术;第3部分为案例篇,对前两部分的知识进行了综合运用。
本书适合程序开发人员及数据库工程师参考学习,也可作为高等院校相关专业师生的参考书。
第1章 数据库入门
1.1 数据库概述
1.1.1 数据库与数据库管理系统
1.1.2 数据库能做什么
1.1.3 主流数据库管理系统介绍
1.2 数据库基础概念
1.2.1 Catalog
1.2.2 表(Table)
1.2.3 列(Column)
1.2.4 数据类型(DataType)
1.2.5 记录(Record)
1.2.6 主键(PrimaryKey)
1.2.7 索引(Index)
1.2.8 表关联
1.2.9 数据库的语言——SQL
1.2.10 DBA与程序员
第2章 数据表的创建和管理
2.1 数据类型
2.1.1 整数类型
2.1.2 数值类型
2.1.3 字符相关类型
2.1.4 日期时间类型
2.1.5 二进制类型
2.2 通过SQL语句管理数据表
2.2.1 创建数据表
2.2.2 定义非空约束
2.2.3 定义默认值
2.2.4 定义主键
2.2.5 定义外键
2.2.6 修改已有数据表
2.2.7 删除数据表
2.2.8 受限操作的变通解决方案
第3章 数据的增、删、改
3.1 数据的插入
3.1.1 简单的INSERT语句
3.1.2 简化的INSERT语句
3.1.3 非空约束对数据插入的影响
3.1.4 主键对数据插入的影响
3.1.5 外键对数据插入的影响
3.2 数据的更新
3.2.1 简单的数据更新
3.2.2 带WHERE子句的UPDATE语句
3.2.3 非空约束对数据更新的影响
3.2.4 主键对数据更新的影响
3.2.5 外键对数据更新的影响
3.3 数据的删除
3.3.1 简单的数据删除
3.3.2 带WHERE子句的DELETE语句
第4章 数据的检索
4.1 SELECT基本用法
4.1.1 简单的数据检索
4.1.2 检索出需要的列
4.1.3 列别名
4.1.4 按条件过滤
4.1.5 数据汇总
4.1.6 排序
4.2 高级数据过滤
4.2.1 通配符过滤
4.2.2 空值检测
4.2.3 反义运算符
4.2.4 多值检测
4.2.5 范围值检测
4.2.6 低效的“WHERE 1=1”
4.3 数据分组
4.3.1 数据分组入门
4.3.2 数据分组与聚合函数
4.3.3 HAVING语句
4.4
……
第5章 函数
第6章 索引与约束
第7章 表连接
第8章 子查询
第9章 主流数据库的SQL语法差异解决方案
第10章 高级话题
第11章 案例讲解
附录A 常用数据库系统的安装和使用
A.1 DB2的安装和使用
A.2 MySQL的安装和使用
A.3 Oracle的安装和使用
A.4 Microsoft SQL Server的安装和使用