《OracleSQL疑难解析》小结了对于Oracle数据库撰写SQL时常常遇到的各种各样难题,出示很多现有的解决方案,包含归纳和聚合数据、多表数据统计、转化成和读取数据、通用性查寻方式、日期和时间值的解决、字符串数组、解决大数字、事务管理、数据字典、清理数据、普遍表格难题、树形结构构造数据信息、解决XML数据信息、系统分区、大目标、数据库管理方法、目标管理方法、SQL监控器和提升、数据库常见故障清除等层面的內容。
《OracleSQL疑难解析》可以协助你灵活运用SQL来处理Oracle数据库开发设计中碰到的各种各样难题,正确引导你把握各种各样搭建运用的方法和技术性,进而编写出高效率、可维护保养的编码。
《OracleSQL疑难解析》朝向实战演练、构造清楚,实例丰富多彩,适用Oracle数据库开发者、Oracle数据库管理人员等相关数据库从业者,还可以做为各大、职高学校相关技术专业老师学生的参照教材和相关培训学校的培训教程。
目录
- 第一部分 数据处理基础
- 第1章 章基础
- 1.1 从表中查询数据
- 1.2 把表中所有字段都列出来
- 1.3 将结果排序
- 1.4 在表中添加记录行
- 1.5 把数据记录从一张表复制到另一张表
- 1.6 批量地从一个表中复制数据到另一个表
- 1.7 改变行记录的值
- 1.8 在一个语句中修改多个字段值
- 1.9 从表中删除不需要的行
- 1.10 删除表中的所有行
- 1.11 从其他查询结果中再次进行查询
- 1.12 查询的WHERE子句基于另一个查询的结果
- 1.13 在语句中找到和消除空值
- 1.14 排序
- 1.15 启用其他排序和比较选项
- 1.16 基于条件的插入或修改
- 第2章 汇总和聚合数据
- 2.1 对某字段值进行汇总
- 2.2 分组进行数据汇总
- 2.3 以多字段分组
- 2.4 在聚合数据集时排除某些组
- 2.5 分多级聚合数据
- 2.6 把聚合结果用在其他查询中
- 2.7 在分组和集合里统计成员
- 2.8 在表中查找重复值和唯一值
- 2.9 合计与小计
- 2.10 构建自己的聚合函数
- 2.11 从之前或之后的行中存取数据
- 2.12 对查询结果行进行排名
- 2.13 在分组内查找最大和最小值
- 2.14 在移动窗口中进行聚合
- 2.15 基于字段子集的数据记录去重
- 2.16 找出表中的序列空挡
- 第3章 多表数据查询
- 3.1 对多表的对应行进行连接
- 3.2 垂直堆叠查询结果
- 3.3 选择性连接
- 3.4 从两个方向进行可选连接
- 3.5 基于其他表中的数据删除记录
- 3.6 跨表寻找匹配的数据
- 3.7 在聚合上进行连接
- 3.8 查找不匹配的行
- 3.9 查找表中不匹配的行
- 3.10 生成测试数据
- 3.11 基于其他表中的数据更新记录
- 3.12 在连接条件里处理和比较NULL值
- 第4章 生成和获取数据
- 4.1 派生新的列
- 4.2 返回不存在的行
- 4.3 把行变换为列
- 4.4 在多列上透视
- 4.5 将列转换成行
- 4.6 出于易读性连接数据
- 4.7 把字符串转换成对应的数值
- 4.8 生成随机数
- 4.9 创建一个逗号分隔值文件
- 第5章 通用查询模式
- 5.1 把NULL转换成其他值
- 5.2 对NULL值排序
- 5.3 为查询结果标记页码
- 5.4 检测数据是否存在
- 5.5 SQL语句中的条件分支
- 5.6 根据条件和函数排序
- 5.7 当子查询返回多个值时的处理
- 5.8 将数字进行不同进制间的转换
- 5.9 在不知道列名或表名的情况下查找字符串
- 5.10 对数据系列进行后续值或趋势预测
- 5.11 修改记录时进行显式锁(悲观锁)
- 5.12 对两张表的内容进行同步
- 第二部分 数据类型和问题
- 第6章 日期和时间值的处理
- 6.1 将日期时间值转换成可读的字符串
- 6.2 将字符串转换为日期时间值
- 6.3 检测重叠的日期范围
- 6.4 自动跟踪数据更改的日期和时间
- 6.5 利用GAPS在数据中生成一个无间隔的时间序列
- 6.6 不同时区之间日期和时间的转换
- 6.7 检测闰年
- 6.8 确定一个月的最后一天的日期
- 6.9 确定一个月的第一天的日期或第一个星期几
- 6.10 判断星期几
- 6.11 通过时间段进行分组和聚合
- 6.12 查找两个日期或部分日期之间的差值
- 6.13 确定任何一年的复活节日期
- 6.14 为网站用户计算“X天活动”
- 第7章 字符串
- 7.1 搜索子字符串
- 7.2 提取子字符串
- 7.3 单字符的字符串替换
- 7.4 搜索模式
- 7.5 提取一个模式
- 7.6 计数模式
- 7.7 替换字符串中的文本
- 7.8 加快字符串搜索
- 第8章 处理数字
- 8.1 字符串和数字类型之间的转换
- 8.2 数字类型之间的转换
- 8.3 选择数据类型精度和刻度
- 8.4 正确执行非数字和无限数字计算
- 8.5 在字符串中验证数字
- 8.6 生成连续的编号
- 8.7 为公式或模式生成数字
- 8.8 处理数值计算中的 NULL
- 8.9 自动四舍五入数字
- 8.10 自动生成数字列表
- 第三部分 开发环境
- 第9章 事务管理
- 9.1 回滚部分事务
- 9.2 如何识别阻塞的事务
- 9.3 优化行级锁与表级锁
- 9.4 如何避免死锁
- 9.5 如何延期约束验证
- 9.6 确保事务的一致性读
- 9.7 管理事务的隔离级别
- 第10章 数据字典
- 10.1 图形工具与SQL
- 10.2 数据字典体系结构
- 10.3 显示用户信息
- 10.4 确定有权访问的表
- 10.5 显示一张表的磁盘空间使用情况
- 10.6 显示表的记录数
- 10.7 显示表的索引
- 10.8 显示未建索引的外键
- 10.9 显示约束
- 10.10 展示主键与外键的关系
- 10.11 显示对象间的依赖关系
- 10.12 显示同义词的元数据
- 10.13 显示视图的文本
- 10.14 显示数据库代码
- 10.15 显示授予的角色
- 10.16 显示对象权限
- 10.17 显示系统权限
- 第四部分 特殊话题
- 第11章 常见报表问题
- 11.1 避免报表中的重复数据
- 11.2 在SQL报表里使用参数
- 11.3 在分组的结果中返回具体列的数据
- 11.4 将排序结果放入相等大小的BUCKET中
- 11.5 创建报表直方图
- 11.6 根据不同的排名进行结果筛选
- 11.7 对假设数据集进行比较
- 11.8 用图形和文字来展示数据的分布
- 11.9 从数据库中直接生成网页报表
- 第12章 清理数据
- 12.1 检测重复数据行
- 12.2 删除重复行
- 12.3 判断数据是否可以加载到数值类型字段中
- 12.4 判断数据是否可以加载到日期类型字段中
- 12.5 执行不区分大小写的查询
- 12.6 对值进行模糊处理
- 12.7 删除所有索引
- 12.8 禁用约束
- 12.9 禁用触发器
- 12.10 从表中删除数据
- 12.11 查找两个SCHEMA的不同之处
- 第13章 树状结构数据
- 13.1 从上到下遍历层级数据
- 13.2 在层次结构同层级中对节点排序
- 13.3 从层次结构表中生成路径名
- 13.4 在层次结构表中辨认叶子数据
- 13.5 检查层次结构数据中的循环
- 13.6 创建固定数量的连续序号的主键值
- 第14章 处理XML数据
- 14.1 将SQL转换成XML
- 14.2 以原生形式存储XML
- 14.3 分解XML供关系型逻辑使用
- 14.4 从XML文档中抽取关键元素
- 14.5 生成复杂的XML文档
- 14.6 验证XML SCHEMA
- 14.7 直接修改XML数据
- 第15章 分区
- 15.1 确定一个表是否应该分区
- 15.2 范围分区
- 15.3 列表分区
- 15.4 哈希分区
- 15.5 复合分区
- 15.6 按需创建分区
- 15.7 引用分区
- 15.8 基于虚拟列的分区
- 15.9 系统分区
- 15.10 配置分区的表空间
- 15.11 自动移动更新的记录
- 15.12 系统分区
- 15.13 对分区增加分区
- 15.14 交换分区
- 15.15 重命名分区
- 15.16 拆分分区
- 15.17 合并分区
- 15.18 删除分区
- 15.19 从一个分区中删除记录
- 15.20 收集分区统计信息
- 15.21 创建本地索引
- 15.22 创建全局索引
- 第16章 大对象
- 16.1 将大文档加载至CLOB字段
- 16.2 将图像数据加载至BLOB字段
- 16.3 使用SQL*Loader进行大对象的批量加载
- 16.4 利用HTTP访问大对象
- 16.5 使得外部大对象(BFILE)对数据库有效
- 16.6 在数据库表中更新或删除LOB
- 第五部分 管理
- 第17章 数据库管理
- 17.1 创建数据库
- 17.2 删除数据库
- 17.3 验证连接信息
- 17.4 创建表空间
- 17.5 删除表空间
- 17.6 调整表空间大小
- 17.7 限制每个会话的数据库资源
- 17.8 关联一组权限
- 17.9 创建用户
- 17.10 删除用户
- 17.11 修改密码
- 17.12 强制密码复杂性
- 第18章 对象管理
- 18.1 创建表
- 18.2 临时存储数据
- 18.3 移动表
- 18.4 重命名对象
- 18.5 删除表
- 18.6 恢复被删除的表
- 18.7 创建索引
- 18.8 创建一个基于函数的索引
- 18.9 创建位图索引
- 18.10 创建一个索引组织表
- 18.11 创建视图
- 18.12 为对象创建替代名称
- 18.13 强制表中的行的唯一性
- 18.14 确保查找值存在
- 18.15 根据条件检查数据
- 18.16 在数据库之间创建连接
- 18.17 创建自动递增的值
- 第19章 SQL监控和优化
- 19.1 实时监控SQL执行统计信息
- 19.2 显示查询的执行计划进展
- 19.3 确定还需要多长时间来完成SQL
- 19.4 识别资源密集型SQL语句
- 19.5 使用Oracle性能报告来确定资源消耗密集型SQL
- 19.6 在操作系统中识别资源密集型查询
- 19.7 使用AUTOTRACE显示执行计划
- 19.8 使用DBMS_XPLAN生成执行计划
- 19.9 跟踪会话的所有SQL语句
- 19.10 解释执行计划
- 19.11 获取调优SQL的建议
- 19.12 强制查询使用自己的执行计划
- 19.13 查看优化器统计信息
- 19.14 生成统计信息
- 第20章 数据库故障排除
- 20.1 确定数据库问题的原因
- 20.2 显示打开的游标
- 20.3 确定联机重做日志的大小是否合适
- 20.4 确定撤销表空间的大小是否合适
- 20.5 确定临时表空间的大小是否合适
- 20.6 完整显示表空间
- 20.7 显示对象大小
- 20.8 监控索引的使用
- 20.9 审计对象的使用
- 20.10 精细审计