搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
SQL范例完全自学手册
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787115212948
  • 作      者:
    庞娅娟,房大伟,张跃廷编著
  • 出 版 社 :
    人民邮电出版社
  • 出版日期:
    2009
收藏
编辑推荐
  软件工程师入门,双格式视频编程随身学。
展开
内容介绍
  《SQL范例完全自学手册》是一本集查询、使用、学习和练习为一体的自学手册,书中介绍了应用SQL进行开发的各种技术和技巧。全书分为17章,内容包括SQL基本查询,WHERE子句过滤,ORDERBY子句排序,数值查询,字符串查询,日期查询,聚合数据检索,分组统计数据,子查询,交叉表、递归查询与分布式查询,插入、更新和删除数据,XML数据检索,优化操作,管理和维护数据库、SQL编程与应用等。《SQL范例完全自学手册》精选了154个典型实例,所选实例覆盖了SQL数据库开发中的热点问题和关键问题。全书按实际应用进行分类,可以使读者在短时间内掌握更多实用技术,快速提高编程水平。
  《SQL范例完全自学手册》附有配套DVD光盘,光盘中提供了实例的全程视频讲解及所有实例源代码,这些源代码都经过精心调试,在WindowsXP、Windows2000和Windows2003下测试通过。
  《SQL范例完全自学手册》内容详尽,实例丰富,非常适合作为编程人员及项目开发人员的学习用书。
展开
精彩书摘
  技术要点
  通过创建非簇索引、惟一索引、多字段簇索引可以加快访问数据的速度。
  1.索引的概念
  索引是一个单独的、物理的数据库结构,在SQL Server中,索引是为了加速对表中数据行的检索而创建的一种分散存储结构。它是针对一个表而建立的,每个索引页面中的行都含有逻辑指针,指向数据表中的物理位置,以便加速检索物理数据。因此,对表中的列是否创建索引,将对查询速度有很大的影响。一个表的存储是由两部分组成的,一部分用来存放表的数据页,另一部分存放索引页。通常索引页面对于数据页面来说小得多。在进行数据检索时,系统首先搜索索引页面,从中找到所需数据的指针,然后直接通过该指针从数据页面中读取数据,从而提高查询速度。
  数据库使用索引的方式与使用书的目录很相似,索引允许用户不必像翻阅完整个书那样就能迅速地找到所需要的信息。在数据库中,使用索引可以迅速地找到表中的数据,而不必扫描整个表。
  在了解了索引的基本概念的同时,讲解索引的优缺点及使用索引的条件:
  (1)使用索引的优点。
  创建惟一性索引,保证数据库表中每一行数据的惟一性。大大加快数据的检索速度,这也是创建索引的最主要原因。加速表与表之间的连接,特别是在实现数据的参考完整性方面特别有意义。在使用分组(GROUP BY)和排序(0RDER BY)子句进行数据检索时,同样可以减少查询中分组和排序的时间。通过使用索引,可以在查询的过程中使用优化隐藏器,提高系统的性能。
  (2)使用索引的缺点。
  创建索引和维护索引要耗费时间,这种时间随着数据量的增加而增加。
  索引需要占物理空间。除了数据表占数据空间之外,每一个索引还要占一定的物理空间,如果要建立簇索引,那么需要的空间就会更大。
  当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,降低了数据的维护速度。
  (3)使用索引的条件。
  考虑建立索引的列如下。
  表的主键。一般而言,存取表的最常用的方法是通过主键来进行的。因此,应该在主键上建立索引。
  连接中频繁使用的列(外键)。这是因为用于连接的列若按顺序存放,系统可以很快地执行连接。
  在某一范围内频繁搜索的列和按排序频繁检索的列。
  建立索引是需要一定的开销的(包括时间和空间上)。当进行INSERT和UPDATE操作时,维护索引也要花费时间和空间,因此,没有必要对表中的所有列都建立索引。如何有效地使用索引要看建立索引和维护索引的代价与因建立索引所节省时间相比较而定。一般来说,如下情况的列建议不考虑建立索引。
  很少或从来不在查询中引用的列,因为系统很少或从来不根据这个列的值去查找行。
  只有两个或若干个值的列(例如性别:男/女),显现不出使用索引的好处。
展开
目录
第1章 SQL基本查询
实例001 在SELECT语句中使用计算列及列别名 2
实例002 定义批处理(BEGIN...END语句) 4
实例003 查询指定行数据 7
实例004 去除结果集中的重复行/列数据(DISTINCT关键字) 9
实例005 计算数据在结果集中的行号(ROW_NUMBER()函数) 11
实例006 随机查询n行数据(NEWID()函数) 13
实例007 查询指定长度的文本类型数据(READTEXT命令) 15
实例008 格式化结果集数据(CONVERT()函数、CAST()函数) 18
实例009 使用iif()函数根据指定条件显示查询结果 21
实例010 利用查询结果集生成表/临时表 22

第2章 SELECT语句:WHERE子句过滤
实例011 运用AND与OR运算符有效的排列查询条件 28
实例012 使用比较运算符查询指定范围内的数据 30
实例013 通过IN运算符给出查询范围 33
实例014 使用BETWEEN/NOT BETWEEN...AND查询范围数据 35
实例015 利用LIKE并引用通配符、转义字符进行模糊查询 38
实例016 查询为空/不为空的数据(IS NULL/IS NOT NULL) 41
实例017 在查询中处理字段值为NULL的数据 44
实例018 使用谓词查询数据(ALL/ANY) 46
实例019 通过EXISTS运算符查询符合条件的数据 48
实例020 使用NOT运算符查询否定条件的数据(与<>运算符等效) 51

第3章 SELECT语句:ORDER BY子句排序
实例021 多字段的升序/降序排列查询结果集 56
实例022 按照姓氏笔画/音序排序 57
实例023 按升序排列“名列前三”的数据 60
实例024 对重复值的排序 62
实例025 在ORDER BY子句中使用表达式 63
实例026 在ORDER BY子句中使用日期函数 66
实例027 排序包含字母及数字的字段 69
实例028 随机排序指定行数的查询结果集 71
实例029 根据一定条件进行动态排序 72
实例030 在视图中使用ORDER BY子句 75

第4章 数值查询
实例031 在查询时对数值进行取整 78
实例032 对查询到的数值四舍五入 80
实例033 利用三角函数计算数值 83
实例034 根据查询数值求弧度/角度(DEGREES()函数、RADIANS()函数) 91
实例035 求数值的指数/对数 93
实例036 实现数值的进制转换 98
实例037 根据生成的随机数查询记录(RAND()函数) 100
实例038 根据查询数值的符号显示具体文本(SING()函数) 101
实例039 求数值的绝对值(ABS()函数) 103
实例040 判断是否为数值(ISNUMERIC()函数) 105

第5章 字符串查询
实例041 在字符串中去除空格 108
实例042 在字符串中插入空格 110
实例043 实现字符串的大小写转换 113
实例044 转换为字符数据 115
实例045 返回字符在字符串中出现的次数 119
实例046 返回字符串中的子串 122
实例047 删除字符串中的子串 123
实例048 查找并替换字符串 125
实例049 比较两个字符串 127

第6章 日期查询
实例050 查询指定时间段的数据 130
实例051 转换日期格式 132
实例052 计算两个日期的距离(DATEDIFF()函数) 135
实例053 按指定日期的天、月、年分别查询数据 137
实例054 返回当前日期时间及对应星期数 140
实例055 查询指定时间间隔的数据(DATEADD()函数) 142
实例056 综合运用DATEDIFF()与DATEADD()函数 144
实例057 判断是否为日期(ISDATE()函数) 147

第7章 聚合数据检索
实例058 对多列的求和运算 150
实例059 求大于平均值的数据 152
实例060 求最大/最小值 155
实例061 求无重复/不为空的记录数 158
实例062 随机查询求和 161
实例063 统计某个值出现的次数 163

第8章 分组统计数据
实例064 分组汇总数据并排序 168
实例065 计算各组数据的平均值(将NULL转换为0) 169
实例066 使用ALL查询全部分组 172
实例067 使用ROLLUP生成部分分组 174
实例068 使用CUBE生成带有小计和总计的交叉表 176
实例069 使用WHERE子句与HAVING子句指定查询及分组条件 178
实例070 使用OVER子句和聚合函数实现分区聚合数据 181
实例071 使用COMPUTE返回数据明细及汇总结果(多个结果集) 184
实例072 使用COMPUTE BY返回分组信息及对应汇总数据(多个结果集) 186

第9章 子查询
实例073 在SELECT子句中使用子查询 190
实例074 在WHERE子句中通过比较运算符引入子查询 192
实例075 在FROM子句中使用子查询 195
实例076 使用IN运算符引入子查询 197
实例077 使用NOT IN运算符引入子查询 200
实例078 利用ALL谓词引入子查询 202
实例079 利用ANY/SOME谓词引入子查询 205
实例080 使用EXISTS运算符引入子查询 207
实例081 使用NOT EXISTS运算符引入子查询 210
实例082 在HAVING子句使用子查询过滤一组数据 211
实例083 在UPDATE语句中使用子查询更新数据 213
实例084 在INSERT INTO语句中使用子查询添加数据 215
实例085 在DELETE语句中使用子查询删除数据 217

第10章 连接查询
实例086 实现两表的笛卡尔乘积查询(CROSS JOIN) 220
实例087 在WHERE子句中设置连接条件 221
实例088 使用INNER JOIN实现自身连接 223
实例089 使用INNER JOIN实现等值连接 224
实例090 使用INNER JOIN实现不等连接 225
实例091 多表内连接的查询 227
实例092 使用LEFT OUTER JOIN以左表为依据查询匹配数据 228
实例093 使用RIGHT OUTER JOIN以右表为依据查询匹配数据 230
实例094 使用FULL JOIN查询两表匹配的所有数据 232
实例095 多表外连接的查询 233

第11章 组合查询
实例096 使用UNION组合多个结果集 238
实例097 使用UNION ALL组合保留重复数据 239
实例098 排序组合后的查询数据 241
实例099 求两个结果集的交集(INTERSECT运算符) 243
实例100 求两个结果集的差集(EXCEPT运算符) 245

第12章 交叉表、递归与分布式查询
实例101 使用CASE语句指定显示的文本 248
实例102 使用CASE语句更新数据 249
实例103 通过CASE语句生成静态交叉表 251
实例104 实现结果集中记录的行列转换 253
实例105 使用PIVOT运算符实现交叉表 256
实例106 使用UNPIVOT运算符反转交叉表 259
实例107 CTE递归查询 262
实例108 调用系统存储过程进行分布式查询 265
实例109 使用函数实现分布式查询 267
实例110 运用分布式事务 269

第13章 插入、更新和删除数据
实例111 使用INSERT INTO语句插入数据 272
实例112 使用UNION ALL运算符批量插入数据 275
实例113 使用INSERT SELECT语句批量插入数据 277
实例114 实现数据库与Excel数据的导入导出 279
实例115 实现SQL Server与Access数据的导入导出 283
实例116 使用UPDATE语句更新数据 286
实例117 使用DELETE语句删除数据 289
实例118 删除表中相同的行数据(游标) 292
实例119 删除完全重复的行(临时表) 299

第14章 XML数据检索
实例120 以XML形式显示检索数据(FOR XML RAW) 304
实例121 检索数据以生成XML文件(FOR XML AUTO) 310
实例122 将XML数据插入到数据表中 314
实例123 利用XML索引检索数据 317
实例124 查找XML节点(QUERY方法) 321
实例125 提取XML节点元素值(VALUE方法) 324
实例126 插入XML元素节点 327
实例127 删除XML元素节点 331
实例128 更新XML元素节点的值 334
实例129 将XML节点转变为对应字段(NODES方法) 337

第15章 优化操作
实例130 创建索引加快数据引用(非聚集、惟一、聚集索引) 342
实例131 使用约束维护数据完整性(主键、惟一、检查约束) 349
实例132 使用视图格式化检索数据 354
实例133 执行带参数的存储过程以动态检索数据 359
实例134 定义触发器以自动执行SQL语句 364
实例135 异常错误处理 369
实例136 应用事务维护数据的一致性 371
实例137 在事务中的表级锁定 374
实例138 实现事务并发控制 377

第16章 管理和维护数据库
实例139 创建/修改数据库 384
实例140 创建/修改数据表 388
实例141 备份数据库 394
实例142 恢复数据库 397
实例143 附加/分离数据库 400
实例144 查看数据库对象 402
实例145 加密数据库中的数据 405
实例146 防止SQL注入攻击 406

第17章 SQL编程与应用
实例147 在C语言中使用SQL通信区 410
实例148 嵌入式SQL中的主变量 412
实例149 嵌入式SQL中的游标操作 415
实例150 在高级语言中嵌入SQL语句 417
实例151 在数据库管理系统中嵌入SQL语句 420
实例152 预编译嵌入式SQL语句 422
实例153 执行嵌入式SQL语句 424
实例154 动态执行SQL语句 424
附录
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证