SQL权威指南(第4版)pdf

下载地址: 网盘下载

 

内容介绍

编辑
《SQL权威指南(第4版)》为SQL名著中文版,兼顾技术与实践,全面细致介绍高级技术,致力于打造SQL编程专家。《SQL权威指南(第4版)》阐释了数据库设计、优化和操作的各方面内容,提供了成为SQL编程专业人士所需的技术与技巧、针对新旧挑战性难题的优秀解决方案、专业的思考方式(以保证程序的正确性与高效性),并涉及了数据库设计与规范化、SQL数据类型、查询、分组、集合操作、优化等主题。另外,JoeCelko(塞科)以通俗易懂的语言叙述了一些关键问题,比如避免使用过多NULL的原因及查询优化方式等。《SQL权威指南(第4版)》适合中高级SQL编程人员学习参考。

作者介绍

编辑
Joe Celko 世界著名的数据库专家,曾担任ANSl SQL标准委员会成员达10年之久,参与了SQL-89和SQL-92标准的制定,是世界上读者数量最多的SQL图书作者之一。他曾撰写过一系列专栏,并通过他的新闻组支持和推动了数据库编程技术以及ANSl/ISO标准的发展。除本书外,他还撰写了多部SQL经典著作,包括《SQL编程风格》、《SQL解惑》和《SQL权威指南》,上述作品的中文版均已由人民邮电出版社出版。

作品目录

编辑
第1章  数据库与文件系统 1
  1.1  实体表 3
  1.2  关系表 3
  1.3  行与记录 3
  1.4  列与字段 4
  1.5  模式对象 5
  1.6  CREATE SCHEMA语句 6
  第2章  事务与并发控制 8
  2.1  会话 8
  2.2  事务与ACID 9
  2.2.1  原子性 9
  2.2.2  一致性 10
  2.2.3  隔离性 10
  2.2.4  持久性 10
  2.3  并发控制 11
  2.3.1  三种现象 11
  2.3.2  隔离级别 12
  2.4  保守式并发控制 13
  2.5  快照隔离与乐观式并发 14
  2.6  逻辑并发控制 16
  2.7  死锁与活锁 16
  第3章  数据库模式对象 17
  3.1  CREATE SCHEMA语句 17
  3.2  CREATE PROCEDURE、CREATE FUNCTION以及CREATE TRIGGER语句 18
  3.3  CREATE DOMAIN语句 18
  3.4  创建序列 19
  3.5  创建断言 19
  3.5.1  为模式级约束使用视图 20
  3.5.2  为约束使用主键和断言 23
  3.6  字符集相关结构 25
  3.6.1  创建字符集 25
  3.6.2  创建排序规则 26
  3.6.3  创建翻译 26
  第4章  定位数据和特殊数值 27
  4.1  显式的物理定位器 27
  4.1.1  ROWID和物理磁盘地址 27
  4.1.2  标识列 27
  4.2  生成的标识符 30
  4.2.1  GUID 30
  4.2.2  UUID 31
  4.3  序列生成函数 32
  4.4  预分配值 33
  4.5  特殊序列 34
  4.5.1  Series表 34
  4.5.2  素数 35
  4.5.3  随机顺序值 37
  4.5.4  其他序列 39
  第5章 基础表和相关元素 40
  5.1  CREATE TABLE语句 41
  5.1.1  列约束 41
  5.1.2  DEFAULT子句 43
  5.1.3  NOT NULL约束 43
  5.1.4  CHECK()约束 44
  5.1.5  UNIQUE以及PRIMARY KEY约束 46
  5.1.6  REFERENCES子句 47
  5.2  嵌套UNIQUE约束 49
  5.2.1  重叠键 52
  5.2.2  单列唯一性与多列唯一性 54
  5.3  CREATE ASSERTION约束 62
  5.4  临时表 62
  5.5  表操作 63
  5.5.1  DROP TABLE <表名> 64
  5.5.2  ALTER TABLE 64
  5.6  避免属性分割 65
  5.6.1  表级属性分割 66
  5.6.2  行级属性分割 67
  5.7  在DDL中表现类层次关系 68
  5.8  显式物理定位器 70
  5.9  自增列 70
  5.9.1  ROWID与物理磁盘地址 72
  5.9.2  标识列 72
  5.9.3  对比标识列和序列 73
  5.10  生成标识符 73
  5.10.1  行业标准的唯一标识符 73
  5.10.2  国防部的唯一标识符 74
  5.10.3  序列生成函数 75
  5.10.4  唯一值生成器 75
  5.10.5  验证源 76
  5.11  关于重复行 77
  5.12  其他模式对象 78
  5.13  临时表 79
  5.14  CREATE DOMAIN语句 79
  5.15  CREATE TRIGGER语句 80
  5.16  CREATE PROCEDURE语句 80
  5.17  DECLARE CURSOR语句 81
  5.17.1  如何使用游标 83
  5.17.2  位置更新及删除语句 84
  第6章 过程式、半过程式以及声明式编程 86
  6.1  软件工程基本原理 86
  6.2  内聚性 86
  6.3  耦合度 87
  6.4  大跨越 88
  6.4.1  一个常见的错误 88
  6.4.2  一处改进 89
  6.5  重写技巧 94
  6.5.1  数据表和生成器代码 95
  6.5.2  用计算替代查找 96
  6.5.3  斐波那契数列 96
  6.6  谓词函数 97
  6.7  过程化分解和逻辑分解 98
  6.7.1  过程式分解方案 99
  6.7.2  逻辑分解方案 100
  第7章 过程式结构 102
  7.1  创建过程 102
  7.2  创建触发器 103
  7.3  游标 106
  7.3.1  DECLARE CURSOR语句 106
  7.3.2  ORDER BY子句 107
  7.3.3  OPEN语句 113
  7.3.4  FETCH语句 113
  7.3.5  CLOSE语句 114
  7.3.6  DEALLOCATE语句 114
  7.3.7  如何使用游标 114
  7.3.8  位置更新及删除语句 117
  7.4  序列 117
  7.5  生成列 118
  7.6  表函数 119
  第8章 辅助表 121
  8.1  序列表 121
  8.1.1  对列表进行枚举 122
  8.1.2  将序列映射为循环 124
  8.1.3  取代迭代循环 125
  8.2  查找辅助表 127
  8.2.1  简单转换辅助表 128
  8.2.2  多转换值辅助表 128
  8.2.3  多参数辅助表 129
  8.2.4  范围辅助表 129
  8.2.5  层次结构辅助表 130
  8.2.6  “一个真正的查找表” 131
  8.3  辅助函数表 133
  8.3.1  用辅助表求反函数 134
  8.3.2  用辅助函数表进行插值 141
  8.4  全局常量表 143
  8.4.1  预分配值 143
  8.4.2  素数 144
  8.4.3  斐波那契数列 144
  8.4.4  随机顺序值 145
  8.5  把过程代码转换成表时的注意事项 147
  第9章 规范化 152
  9.1  函数依赖和多值依赖 154
  9.2  第一范式(1NF) 154
  9.3  第二范式(2NF) 158
  9.4  第三范式(3NF) 159
  9.5  基本关键字范式(EKNF) 160
  9.6  Boyce-Codd范式(BCNF) 161
  9.7  第四范式(4NF) 162
  9.8  第五范式(5NF) 163
  9.9  域-键范式(DKNF) 164
  9.10  规范化的实用技巧 171
  9.11  键类型 172
  9.11.1  自然键 172
  9.11.2  人工键 172
  9.11.3  对外暴露的物理定位器 173
  9.12  非规范化的实用技巧 174
  第10章 SQL的数值数据 180
  10.1  数值类型 180
  10.2  数值类型的转换 183
  10.2.1  数值的舍入和截断 183
  10.2.2  CAST()函数 185
  10.3  四则运算函数 185
  10.4  算术运算和NULL 186
  10.5  值与NULL的相互转换 187
  10.5.1  NULLIF()函数 187
  10.5.2  COALESCE()函数 187
  10.6  数学函数 189
  10.6.1  数学运算符 189
  10.6.2  指数函数 191
  10.6.3  标量函数 192
  10.6.4  将数值转换为文字 192
  10.7  唯一值生成器 193
  10.7.1  存有间隙的序列 194
  10.7.2  预分配数值 194
  10.8  IP地址 195
  10.8.1  CHAR(39)存储 195
  10.8.2  二进制存储 196
  10.8.3  使用多个单独的SMALLINT 196
  第11章 SQL中的时间数据类型 197
  11.1  关于日历标准的说明 197
  11.2  SQL时间数据类型 199
  11.2.1  时间的内部表示 200
  11.2.2  日期格式标准 200
  11.2.3  处理时间戳 201
  11.2.4  处理时间 202
  11.2.5  时区和夏令时 203
  11.3  INTERVAL数据类型 204
  11.4  时间算术 206
  11.5  时间数据模型的特性 207
  11.5.1  为持续时间建模 207
  11.5.2  持续时间之间的关系 209
  第12章 字符数据类型 211
  12.1  SQL字符串问题 211
  12.1.1  字符串相等问题 212
  12.1.2  字符串排序问题 212
  12.1.3  字符串分组问题 213
  12.2  标准字符串函数 213
  12.3  常见的厂商扩展 214
  12.4  Cutter表 222
  12.5  嵌套替换 223
  第13章 NULL:SQL中的缺失数据 224
  13.1  空表和缺失表 225
  13.2  列中的缺失值 225
  13.3  上下文和缺失值 226
  13.4  比较NULL 227
  13.5  NULL和逻辑 228
  13.5.1  子查询谓词中的NULL 229
  13.5.2  逻辑值谓词 231
  13.6  算术中的NULL值 231
  13.7  函数中的NULL值 231
  13.8  NULL和宿主语言 231
  13.9  NULL的设计忠告 232
  13.10  关于多NULL值的说明 234
  第14章 多列数据元素 237
  14.1  距离函数 237
  14.2  在SQL中存储IPv4地址 239
  14.2.1  使用单个VARCHAR(15)列表示IPv4地址 239
  14.2.2  使用一个INTEGER列表示IPv4地址 239
  14.2.3  使用四个SMALLINT列表示IPv4地址 240
  14.3  在SQL中存储IPv6地址 241
  14.4  货币与其他单位的转换 242
  14.5  社会安全号 242
  14.6  有理数 245
  第15章 表操作 246
  15.1  DELETE FROM语句 246
  15.1.1  DELETE FROM子句 246
  15.1.2  WHERE子句 247
  15.1.3  根据辅助表中的数据执行删除 249
  15.1.4  在相同表内进行删除 250
  15.1.5  不用声明引用完整性在多个表中进行删除 252
  15.2  INSERT INTO语句 253
  15.2.1  INSERT INTO子句 253
  15.2.2  插入的性质 254
  15.2.3  批量装载和卸载实用程序 255
  15.3  UPDATE语句 255
  15.3.1  UPDATE子句 255
  15.3.2  WHERE子句 256
  15.3.3  SET子句 256
  15.3.4  利用第二张表进行更新 257
  15.3.5  在UPDATE中使用CASE表达式 259
  15.4  常见厂商扩展的缺陷说明 261
  15.5  MERGE语句 263
  第16章 比较或theta操作 266
  16.1  数据类型转换 266
  16.1.1  日期显示格式 267
  16.1.2  其他显示格式 268
  16.2  SQL中的行比较 268
  16.3  IS [NOT] DISTINCT FROM操作符 270
  第17章 值化谓词 271
  17.1  IS NULL谓词 271
  17.2  IS [NOT] {TRUE | FALSE | UNKNOWN}谓词 272
  17.3  IS [NOT] NORMALIZED谓词 273
  第18章 CASE表达式 275
  18.1  CASE表达式 275
  18.1.1  COALESCE()和NULLIF()函数 278
  18.1.2  带GROUP BY的CASE表达式 278
  18.1.3  CASE、CHECK()子句和逻辑蕴涵 280
  18.2  子查询表达式和常量 283
  18.3  Rozenshtein特征函数 283
  第19章 LIKE与SIMILAR TO谓词 285
  19.1  使用模式的技巧 285
  19.2  NULL值和空字符串的谓词结果 287
  19.3  LIKE并不是相等 287
  19.4  用联结消除LIKE谓词 287
  19.5  CASE表达式和LIKE搜索条件 288
  19.6  SIMILAR TO谓词 289
  19.7  字符串的有关技巧 291
  19.7.1  字符串的字符内容 291
  19.7.2  搜索与声明一个串 291
  19.7.3  创建字符串中的索引 292
  第20章 BETWEEN和OVERLAPS谓词 293
  20.1  BETWEEN谓词 293
  20.1.1  NULL值的结果 294
  20.1.2  空集的结果 294
  20.1.3  程序设计技巧 295
  20.2  OVERLAPS谓词 296
  第21章 [NOT] IN()谓词 305
  21.1  优化IN()谓词 306
  21.2  用IN()谓词替换OR 309
  21.3  NULL和IN()谓词 309
  21.4  IN()谓词和引用约束 312
  21.5  IN()谓词和标量查询 313
  第22章 EXISTS()谓词 315
  22.1  EXISTS和NULL 316
  22.2  EXISTS和INNER JOIN 318
  22.3  NOT EXISTS和OUTER JOIN 318
  22.4  EXISTS()和量词 319
  22.5  EXISTS()和引用约束 320
  22.6  EXISTS和三值逻辑 320
  第23章 量化子查询谓词 323
  23.1  标量子查询比较 323
  23.2  量词和缺失数据 324
  23.3  ALL谓词和极值函数 326
  23.4  UNIQUE谓词 327
  23.5  DISTINCT谓词 328
  第24章 简单SELECT语句 329
  24.1  SELECT语句执行顺序 329
  24.2  单级SELECT语句 329
  第25章 高级SELECT语句 336
  25.1  关联子查询 336
  25.2  嵌入的INNER JOIN 340
  25.3  OUTER JOIN 341
  25.3.1  OUTER JOIN的一些历史 342
  25.3.2  NULL和OUTER JOIN 346
  25.3.3  NATURAL JOIN与搜索式OUTER JOIN 347
  25.3.4  OUTER JOIN自联结 348
  25.3.5  两次或多次OUTER JOIN 349
  25.3.6  OUTER JOIN和聚合函数 351
  25.3.7  FULL OUTER JOIN 351
  25.4  UNION JOIN操作符 352
  25.5  标量SELECT表达式 353
  25.6  旧JOIN语法与新JOIN语法 354
  25.7  受约束的JOIN 355
  25.7.1  库存和订单 355
  25.7.2  稳定的婚姻 356
  25.7.3  将球装入盒中 360
  25.8  Codd博士的T联结 363
  25.8.1  Stobbs方案 366
  25.8.2  Pieere方案 367
  25.8.3  参考文献 368
  第26章 虚拟表:视图、派生表、CTE及MQT 369
  26.1  查询中的视图 369
  26.2  可更新视图和只读视图 370
  26.3  视图的类型 371
  26.3.1  单表投影和限制 371
  26.3.2  计算列 371
  26.3.3  转换列 372
  26.3.4  分组视图 372
  26.3.5  联结视图 373
  26.3.6  视图的联结 374
  26.3.7  嵌套视图 375
  26.4  数据库引擎如何处理视图 376
  26.4.1  视图列列表 376
  26.4.2  视图物化 376
  26.4.3  内嵌文本扩展 377
  26.4.4  指针结构 378
  26.4.5  索引和视图 379
  26.5  WITH CHECK OPTION子句 379
  26.6  删除视图 383
  26.7  视图与临时表的使用提示 384
  26.7.1  使用视图 384
  26.7.2  使用临时表 385
  26.7.3  用视图扁平化表 385
  26.8  使用派生表 387
  26.8.1  FROM子句中的派生表 387
  26.8.2  包含VALUES构造器的派生表 388
  26.9  公用表表达式 389
  26.10  递归公用表表达式 390
  26.10.1  简单增量 391
  26.10.2  简单树遍历 391
  26.11  物化查询表 392
  第27章 在查询中分区数据 393
  27.1  覆盖和分区 393
  27.1.1  按范围分区 393
  27.1.2  单列范围表 394
  27.1.3  用函数进行分区 394
  27.1.4  按顺序分区 395
  27.1.5  使用窗口函数进行分区 397
  27.2  关系除法 398
  27.2.1  带余除法 399
  27.2.2  精确除法 400
  27.2.3  性能说明 400
  27.2.4  Todd的除法 401
  27.2.5  带JOIN的除法 403
  27.2.6  用集合操作符进行除法 403
  27.3  Romley除法 404
  27.4  RDBMS中的布尔表达式 407
  27.5  FIFO和LIFO子集 408
  第28章 分组操作 411
  28.1  GROUP BY子句 411
  28.2  GROUP BY和HAVING 412
  28.3  多层次聚合 415
  28.3.1  多级聚合的分组视图 415
  28.3.2  多层次聚合的子查询表达式 416
  28.3.3  多层聚合的CASE表达式 417
  28.4  在计算列上分组 418
  28.5  成对分组 418
  28.6  排序和GROUP BY 420
  第29章 简单聚合函数 422
  29.1  COUNT()函数 422
  29.2  SUM()函数 426
  29.3  AVG()函数 427
  29.3.1  空组的平均数 428
  29.3.2  多个列上的平均值 429
  29.4  极值函数 430
  29.4.1  简单的极值函数 430
  29.4.2  广义极值函数 432
  29.4.3  多条件极值函数 438
  29.4.4  GREATEST()和LEAST()函数 439
  29.5  LIST()聚合函数 442
  29.5.1  使用递归CTE的LIST聚合函数 442
  29.5.2  交叉表的LIST()函数 443
  29.6  PRD()聚合函数 443
  29.6.1  通过表达式实现PRD()函数 444
  29.6.2  通过对数实现PRD()聚合函数 445
  29.7  位运算符聚合函数 447
  29.7.1  OR位运算符聚合函数 448
  29.7.2  AND位运算符聚合函数 449
  第30章 高级分组、窗口聚合以及SQL中的OLAP 450
  30.1  星模式 450
  30.2  GROUPING操作符 451
  30.2.1  GROUP BY GROUPING SET 451
  30.2.2  ROLLUP 452
  30.2.3  CUBE 452
  30.2.4  SQL的OLAP示例 453
  30.3  窗口子句 454
  30.3.1  PARTITION BY子句 454
  30.3.2  ORDER BY子句 454
  30.3.3  窗口帧子句 455
  30.4  窗口化聚合函数 456
  30.5  序号函数 457
  30.5.1  行号 457
  30.5.2  RANK()和DENSE_RANK() 457
  30.5.3  PERCENT_RANK()和CUME_DIST() 457
  30.5.4  一些示例 458
  30.6  厂商扩展 460
  30.6.1  LEAD和LAG函数 460
  30.6.2  FIRST和LAST函数 461
  30.7  一点历史知识 462
  第31章 SQL中的描述性统计 463
  31.1  众数 463
  31.2  AVG()函数 464
  31.3  中值 464
  31.3.1  中值编程问题 465
  31.3.2  Celko第一中值 466
  31.3.3  Date第二中值 467
  31.3.4  Murchison中值 468
  31.3.5  Celko第二中值 468
  31.3.6  Vaughan提出的应用视图的中值 470
  31.3.7  使用特征函数的中值 470
  31.3.8  Celko第三中值 473
  31.3.9  Ken Henderson的中值 475
  31.3.10  OLAP中值 476
  31.4  方差和标准偏差 478
  31.5  平均偏差 479
  31.6  累积统计 479
  31.6.1  运行差分 479
  31.6.2  累积百分比 481
  31.6.3  序号函数 483
  31.6.4  五分位数和相关统计 486
  31.7  交叉表 486
  31.7.1  通过交叉联结建立交叉表 489
  31.7.2  通过外联结建立交叉表 490
  31.7.3  通过子查询建立交叉表 490
  31.7.4  使用CASE表达式建立交叉表 491
  31.8  调和平均数和几何平均数 491
  31.9  SQL中的多变量描述统计数据 492
  31.9.1  协方差 492
  31.9.2  皮尔森相关系数r 493
  31.9.3  多变量描述统计中的NULL值 493
  31.10  SQL:2006中的统计函数 494
  31.10.1  方差、标准偏差以及描述统计 494
  31.10.2  相关性 494
  31.10.3  分布函数 495
  第32章 子序列、区域、顺串、间隙及岛屿 496
  32.1  查找尺寸为n的子区域 496
  32.2  为区域编号 497
  32.3  查找最大尺寸的区域 499
  32.4  界限查询 502
  32.5  顺串和序列查询 503
  32.6  数列的求和 506
  32.7  交换和平移列表值 509
  32.8  压缩一列数值 510
  32.9  折叠一列数值 510
  32.10  覆盖 511
  第33章 SQL中的矩阵 516
  33.1  通过命名列进行访问的数组 516
  33.2  通过下标列进行访问的数组 519
  33.3  SQL的矩阵操作 520
  33.3.1  矩阵等式 521
  33.3.2  矩阵加法 521
  33.3.3  矩阵乘法 522
  33.3.4  矩阵转置 523
  33.3.5  行排序及列排序 524
  33.3.6  其他矩阵操作 524
  33.4  将表扁平化为数组 524
  33.5  比较表格式中的数组 526
  第34章 集合操作 528
  34.1  UNION和UNION ALL 528
  34.1.1  执行顺序 530
  34.1.2  混合使用UNION和UNION ALL操作符 531
  34.1.3  对同一表中的列执行UNION操作 531
  34.2  INTERSECT和EXCEPT 531
  34.2.1  没有NULL值和重复行时的INTERSECT和EXCEPT操作 534
  34.2.2  存在NULL值和重复行时的INTERSECT和EXCEPT操作 535
  34.3  关于ALL和SELECT DISTINCT的一个说明 536
  34.4  相等子集和真子集 536
  第35章 子集 538
  35.1  表中的每个第n项 538
  35.2  从表中选取随机行 539
  35.3  CONTAINS操作符 543
  35.3.1  真子集操作符 543
  35.3.2  表的相等操作 544
  35.4  序列间隙 547
  35.5  重叠区间的覆盖问题 549
  35.6  选取有代表性的子集 552
  第36章 SQL中的树和层次结构 556
  36.1  邻接列表模型 557
  36.1.1  复杂约束 557
  36.1.2  查询的过程遍历 559
  36.1.3  更改表 560
  36.2  路径枚举模型 560
  36.2.1  查找子树和节点 561
  36.2.2  找出层次和后代 561
  36.2.3  删除节点和子树 562
  36.2.4  完整性约束 562
  36.3  层次结构的嵌套集合模型 563
  36.3.1  计数特性 564
  36.3.2  包含特性 564
  36.3.3  下级节点 565
  36.3.4  层次聚合 566
  36.3.5  删除节点和子树 566
  36.3.6  将邻接列表转换为嵌套集合模型 567
  36.4  其他表现树和层次结构的模型 569
  第37章 SQL中的图 570
  37.1  邻接列表模型图 570
  37.1.1  SQL和邻接列表模型 571
  37.1.2  路径与CTE 572
  37.1.3  环状图 577
  37.1.4  邻接矩阵模型 579
  37.2  分割嵌套集合模型表示的图节点 580
  37.2.1  图中的所有节点 581
  37.2.2  路径端点 581
  37.2.3  可达节点 582
  37.2.4  边 582
  37.2.5  入度和出度 582
  37.2.6  源节点、汇聚节点、孤立节点和内部节点 583
  37.2.7  将无环图转化为嵌套集合 584
  37.3  多边形中的点 586
  37.4  图论参考书目 588
  第38章 时间查询 589
  38.1  时间数学 589
  38.2  个性化日历 591
  38.3  时间序列 592
  38.3.1  时间序列中的间隙 593
  38.3.2  连续时间段 595
  38.3.3  相邻事件中缺失的时间 600
  38.3.4  查找日期 603
  38.3.5  时间的起始点和结束点 604
  38.3.6  开始时间和结束时间 605
  38.4  儒略日 606
  38.5  其他时间函数 609
  38.6  星期 610
  38.7  在表中对时间建模 612
  38.8  日历辅助表 614
  38.9  2000年问题 616
  38.9.1  零 616
  38.9.2  闰年 617
  38.9.3  千年问题 618
  38.9.4  旧数据中的怪异日期 619
  38.9.5  后果 619
  第39章 优化SQL 620
  39.1  访问方法 621
  39.1.1  顺序访问 621
  39.1.2  索引访问 621
  39.1.3  散列索引 622
  39.1.4  位向量索引 622
  39.2  如何建立索引 622
  39.2.1  使用简单查询条件 623
  39.2.2  简单字符串表达式 624
  39.2.3  简单时间表达式 625
  39.3  提供额外信息 626
  39.4  谨慎建立多列索引 627
  39.5  考察IN谓词 627
  39.6  避免UNION 629
  39.7  联结胜于嵌套查询 629
  39.8  使用更少的语句 630
  39.9  避免排序 631
  39.10  避免交叉联结 634
  39.11  了解优化器 635
  39.12  在模式更改后重编译静态SQL 636
  39.13  临时表有时能带来方便 637
  39.14  更新统计数据 639
  39.15  不要迷信较新的特性 639
  参考文献 642

 

 

下载地址: 网盘下载

 

转载于:https://www.cnblogs.com/long12365/p/9731046.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值