Blue Flower

sql查询的艺术是一本MYSQL数据库基础和SQL技巧详解指南,由张权和郭天娇两人共同编著。本书依照SQL语句要素,按照数据定义、数据查询、数据操纵、数据控制、事务控制和程序化SQL的顺序讲解SQL语言,内容全面。本书中大多数SQL语句都是采用语法、说明、实例、实例代码、运行结构的顺序结构编写,同时书中还包括了大小321个数据库实例,能够让读者在学习SQL语言原理的同时掌握其用法,非常适合SQL初学者阅读,对于数据库架构师、数据库管理员也有一定的参考价值。
202209171910270055800000

内容介绍

SQL是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。SQL是数据库领域的一种标准语言。任何需要从事数据库相关工作的程序员,都必须学习和掌握SQL。SQL查询的艺术全面地介绍了数据库的基础知识和SQL查询的技巧,通过丰富的实例,帮助读者掌握常见的SQL应用。全书共分19章,按照数据定义、数据查询、数据操纵、数据控制、事务控制和程序化SQL的顺序,详细地讲解SQL编程的基础知识。全书共包括大小实例300多个,突出了实例教学、学用结合的特点。
202209171910272840570001

sql查询的艺术章节目录

第1章 数据库与SQL基础1.1 数据库的基本概念1.1.1 数据库的由来1.1.2 数据库系统的概念1.2 数据库系统的结构、组成及工作流程1.2.1 数据库的体系结构1.2.2 数据库系统的组成1.2.3 数据库的工作流程1.3 关系数据库1.3.1 关系模型1.3.2 Codd十二法则1.3.3 范式1.4 SQL语言基础1.4.1 SQL的历史1.4.2 SQL语言的组成1.4.3 SQL语句的结构1.4.4 SQL的优点1.4.5 SQL的执行1.5 SQL环境1.5.1 环境1.5.2 SQL的层次结构1.5.3 客户程序和服务程序系统1.5.4 SQL环境中对象的命名规则第2章 主要的关系数据库与SQL2.1 SQL Server2.1.1 SQL Server的结构2.1.2 数据库访问标准化接口--ODBC2.1.3 使用查询分析器执行SQL语句2.2 Transact-SQL2.2.1 Transact-SQL概述2.2.2 Transact-SQL的主要组成2.2.3 Transact-SQL的一些重要命令第3章 创建、修改和删除表3.1 表的基础知识3.1.1 表的基本结构3.1.2 表的种类3.2 SQL数据类型3.2.1 字符型数据3.2.2 数字型数据3.2.3 日期数据类型3.2.4 二进制数据类型3.2.5 文本和图形数据类型3.2.6 自定义数据类型3.3 表的创建(CREATE)3.3.1 创建基本表3.3.2 非空约束3.3.3 DEFAULT指定缺省值3.4 表的修改3.4.1 增加新列3.4.2 删除列3.4.3 修改列3.5 表的删除与重命名3.5.1 重命名表3.5.2 删除表3.6 创建、删除数据库3.6.1 数据库的创建3.6.2 SQL Server中数据库的创建3.6.3 删除数据库第4章 索引与视图的创建4.1 索引的基础知识4.1.1 索引的概念4.1.2 索引的结构4.2 索引的创建与销毁 614.2.1 基本创建语法4.2.2 本章实例用到的实例表4.2.3 创建简单的非簇索引4.2.4 多字段非簇索引的创建4.2.5 使用UNIQUE关键字创建惟一索引4.2.6 使用CLUSTERDE关键字创建簇索引4.2.7 索引的销毁4.2.8 使用索引的几点原则4.3 视图的基础知识4.3.1 视图简介4.3.2 视图的优缺点4.4 视图的创建与销毁4.4.1 基本创建语法4.4.2 创建简单的视图4.4.3 利用视图简化表的复杂连接4.4.4 利用视图简化复杂查询4.4.5 视图的销毁4.4.6 使用视图的几点原则第5章 简单的查询5.1 查询的基本结构5.1.1 SELECT语句的结构5.1.2 SELECT语句的执行步骤5.2 列的查询5.2.1 本章用到的实例表5.2.2 单列查询5.2.3 使用DISTINCT去除重复信息5.2.4 多列查询5.2.5 查询所有的列5.3 排序查询结果5.3.1 单列排序5.3.2 多列排序5.3.3 采用序号进行多列排序5.3.4 反向排序5.4 使用WHERE子句定义搜索条件查询5.4.1 WHERE子句单条件查询5.4.2 单值比较运算符5.4.3 BETWEEN运算符范围筛选5.4.4 NULL值的判断第6章 复杂搜索条件查询6.1 本章用到的实例表6.2 组合查询条件6.2.1 AND运算符6.2.2 OR运算符6.2.3 AND、OR运算符的组合使用6.3 IN运算符6.3.1 IN运算符的使用方法6.3.2 IN运算符与OR运算符6.4 NOT运算符6.4.1 使用NOT运算符6.4.2 NOT运算符与<>运算符6.5 使用LIKE进行模糊查询6.5.1 LIKE运算符6.5.2 "%"通配符6.5.3 "_"通配符6.5.4 "[]"通配符6.5.5 使用ESCAPE定义转义符第7章 连接符、数值运算与函数7.1 本章实例用到的表7.2 连接符7.2.1 连接符的应用7.2.2 使用别名7.3 数值运算7.3.1 数学运算符的种类7.3.2 数学运算符的运用7.3.3 使用CAST表达式转换数据类型7.3.4 使用CASE表达式7.4 函数7.4.1 有关函数的说明7.4.2 字符处理函数7.4.3 算术运算函数7.4.4 日期时间函数7.4.5 CONVERT()函数转换日期、时间第8章 聚合分析与分组8.1 聚合分析的基本概念8.1.1 聚合分析8.1.2 聚合函数8.2 聚合函数的应用8.2.1 求和函数--SUM()8.2.2 计数函数--COUNT()8.2.3 最大/最小值函数--MAX()/MIN()8.2.4 均值函数--AVG()8.2.5 聚合分析的重值处理8.2.6 聚合函数的组合使用8.3 组合查询8.3.1 GROUP BY子句创建分组8.3.2 GROUP BY子句根据多列组合行8.3.3 ROLLUP运算符和CUBE运算符8.3.4 GROUP BY子句中的NULL值处理8.3.5 HAVING子句8.3.6 HAVING子句与WHERE子句8.3.7 SELECT语句各查询子句总结第9章 多表查询9.1 本章用到的实例表9.2 表的基本连接9.2.1 连接表的目的9.2.2 简单的二表连接9.2.3 多表连接9.2.4 使用表别名9.2.5 采用JOIN关键字建立连接9.3 表的连接类型9.3.1 自连接9.3.2 自然连接(NATURAL JOIN)9.3.3 内连接(INNER JOIN)9.3.4 外连接(OUTER JOIN)9.3.5 交叉连接(CROSS JOIN)9.4 UNION与UNION JOIN9.4.1 关系的集合运算9.4.2 UNION运算符9.4.3 ORDER BY子句排序UNION运算结果9.4.4 对多表进行UNION运算9.4.5 UNION JOIN 连接表9.5 表连接的其他应用及注意问题9.5.1 连接表进行聚合运算9.5.2 多表连接的综合运用9.5.3 多表连接注意事项第10章 子查询10.1 创建和使用返回单值的子查询10.1.1 在多表查询中使用子查询10.1.2 在子查询中使用聚合函数10.2 创建和使用返回多行的子查询10.2.1 IN子查询10.2.2 IN子查询实现集合交和集合差运算10.2.3 EXISTS子查询10.2.4 EXISTS子查询实现两表交集10.2.5 SOME/ALL子查询10.2.6 UNIQUE子查询10.3 相关子查询10.3.1 使用IN引入相关子查询10.3.2 比较运算符引入相关子查询10.3.3 在HAVING子句中使用相关子查询10.4 嵌套子查询10.5 使用子查询创建视图10.6 树查询第11章 数据插入操作11.1 插入单行记录11.1.1 基本语法11.1.2 整行插入11.1.3 NULL值的插入11.1.4 唯一值的插入11.1.5 特定字段数据插入11.1.6 通过视图插入行11.2 插入多行记录11.2.1 由VALUES关键字引入多行数据插入11.2.2 使用SELECT语句插入值11.3 表中数据的复制11.3.1 基本语法11.3.2 应用实例11.4 从外部数据源导入、导出数据11.4.1 Access数据库数据的导出11.4.2 Access数据库数据的导入11.4.3 SQL Server数据库数据导出11.4.4 SQL Server数据库数据导入第12章 数据的更新和删除12.1 更新表中的数据12.1.1 UPDATE语句的基本语法12.1.2 UPDATE语句更新列值12.1.3 利用子查询更新多行的值12.1.4 依据外表值更新数据12.1.5 分步更新表12.2 删除表中的数据12.2.1 DELETE语句基本语法12.2.2 DELETE语句删除单行数据12.2.3 DELETE语句删除多行数据12.2.4 DELETE语句删除所有行12.2.5 TRUNCATE TABLE语句12.3 通过视图更新表12.3.1 可更新视图的约束12.3.2 通过视图更新表数据12.3.3 通过视图删除表数据第13章 安全性控制13.1 SQL安全模式13.1.1 授权ID13.1.2 SQL的安全对象和权限13.1.3 授权图13.2 角色管理13.2.1 CREATE语句创建角色13.2.2 DROP语句删除角色13.2.3 GRANT语句授予角色13.2.4 REVOKE语句取消角色13.3 权限管理13.3.1 GRANT语句授予权限13.3.2 REVOKE语句取消权限13.3.3 SELECT权限控制13.3.4 INSERT权限控制13.3.5 UPDATE权限控制13.3.6 DELETE权限控制13.4 SQL Server安全管理13.4.1 SQL Server登录认证13.4.2 SQL Server用户ID的管理13.4.3 SQL Server权限管理13.4.4 SQL Server角色管理13.5 Oracle安全管理13.5.1 Oracle中用户、资源、概要文件、模式的概念13.5.2 Oracle中的用户管理13.5.3 Oracle中的资源管理13.5.4 Oracle中的权限管理13.5.5 Oracle中的角色管理第14章 完整性控制14.1 完整性约束简介14.1.1 数据的完整性14.1.2 完整性约束的类型14.2 与表有关的约束14.2.1 列约束与表约束的创建14.2.2 NOT NULL(非空)约束14.2.3 UNIQUE(惟一)约束14.2.4 PRIMARY KEY(主键)约束14.2.5 FOREIGN KEY(外键)约束14.2.6 CHECK(校验)约束14.3 深入探讨外键与完整性检查14.3.1 引用完整性检查14.3.2 MATCH子句14.3.3 更新、删除操作规则14.4 域约束与断言14.4.1 域与域约束14.4.2 利用断言创建多表约束14.5 SQL Server中的完整性控制14.5.1 创建规则(Rule)14.5.2 规则的绑定与松绑14.5.3 创建缺省值(Default)14.5.4 缺省值的绑定与松绑第15章 存储过程与函数15.1 SQL中的存储过程与函数15.2 SQL Server 中的流控制语句15.2.1 BEGIN…END语句15.2.2 IF…ELSE语句15.2.3 WHILE、BREAK和CONTINUE语句15.2.4 DECLARE语句15.2.5 GOTO label语句15.2.6 RETURN语句15.2.7 WAITFOR语句15.2.8 PRINT语句15.2.9 注释15.3 SQL Server中的存储过程和函数15.3.1 系统存储过程15.3.2 使用CREATE PROCEDURE创建存储过程15.3.3 使用EXECUTE语句调用存储过程15.3.4 使用CREATE FUNCTION创建函数15.3.5 使用Enterprise Manager(企业管理器)创建存储过程和函数15.3.6 修改和删除存储过程和函数15.4 Oracle中的流控制语句15.4.1 条件语句15.4.2 循环语句15.4.3 标号和GOTO15.5 Oracle数据库中的存储过程15.5.1 存储过程的创建与调用15.5.2 Oracle中存储过程和函数的管理第16章 SQL触发器16.1 触发器的基本概念16.1.1 触发器简介16.1.2 触发器执行环境16.2 SQL Server中的触发器16.2.1 SQL Server触发器的种类16.2.2 使用CREATE TRIGGER命令创建触发器16.2.3 INSERT触发器16.2.4 DELETE触发器16.2.5 UPDATE触发器16.2.6 INSTEAD OF触发器16.2.7 嵌套触发器16.2.8 递归触发器16.2.9 SQL Server中触发器的管理16.3 Oracle数据库中触发器的操作16.3.1 Oracle触发器类型16.3.2 触发器的创建16.3.3 创建系统触发器16.3.4 触发器的触发次序和触发谓词的使用16.3.5 Oracle触发器的管理第17章 SQL中游标的使用17.1 SQL游标的基本概念17.1.1 游标的概念17.1.2 游标的作用及其应用17.2 SQL游标的使用17.2.1 使用DECLARE CURSOR语句创建游标17.2.2 使用OPEN/CLOSE语句打开/关闭游标17.2.3 使用FETCH语句检索数据17.2.4 基于游标的定位DELETE语句17.2.5 基于游标的定位UPDATE语句17.3 SQL Server中游标的扩展17.3.1 Transact_SQL扩展DECLARE CURSOR语法17.3.2 @@CURSOR_ROWS全局变量确定游标的行数17.3.3 @@FETCH_STATUS全局变量检测FETCH操作的状态17.3.4 游标的关闭与释放17.3.5 游标变量17.3.6 使用系统过程管理游标17.4 Oracle中游标的使用17.4.1 显式游标与隐式游标17.4.2 游标的属性17.4.3 %TYPE、%ROWTYPE定义记录变量17.4.4 参数化游标17.4.5 游标中的循环17.4.6 游标变量17.5 小结第18章 事务控制与并发处理18.1 SQL事务控制18.1.1 事务控制的引入18.1.2 事务的特性18.1.3 SQL中与事务有关的语句18.2 事务控制的具体实现18.2.1 开始事务18.2.2 SET CONSTRAINTS语句设置约束的延期执行18.2.3 终止事务18.3 并发控制18.3.1 并发操作的问题18.3.2 事务隔离级别18.3.3 SET TRANSACTION设置事务属性18.4 SQL Server中的并发事务控制18.4.1 锁的分类18.4.2 SQL Server中表级锁的使用18.4.3 设置隔离级别实现并发控制18.4.4 死锁及其预防18.5 Oracle中的并发事务控制18.5.1 通过加锁避免写数据丢失18.5.2 设置只读事务(READ ONLY)18.5.3 Oracle中的隔离级别第19章 嵌入式SQL19.1 SQL的调用19.1.1 直接调用SQL19.1.2 嵌入式SQL19.1.3 SQL调用层接口(CLI)19.2 嵌入式SQL的使用19.2.1 创建嵌入式SQL语句19.2.2 SQL通信区19.2.3 主变量19.2.4 嵌入式SQL中使用游标19.3 检索、操作SQL数据19.3.1 不需要游标的SQL DML操作19.3.2 使用游标的SQL DML操作19.3.3 动态SQL技术19.4 SQL Server中嵌入式SQL的编译运行19.4.1 嵌入式SQL代码19.4.2 预编译文件19.4.3 设置Visual C++ 6.0连接19.4.4 编译运行程序19.5 Oracle中嵌入式SQL的编译运行19.5.1 嵌入式SQL代码19.5.2 预编译文件19.5.3 设置Visual C++ 6.0编译环境19.5.4 编译运行程序附录A SQL保留字附录B 常用的SQL命令

使用说明

1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必下载pdf阅读器
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读>

下载仅供下载体验和测试学习,不得商用和正当使用。

下载体验

请输入密码查看内容!

如何获取密码?

 

点击下载