第7章-SQL-SERVER-数据查询.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7章 数据查询;7.1 查询语句; ;7.1.1 ?SELECT语句的语法结构; ; ;7.1.2 ?SELECT各子句的顺序及功能;7.1.3 ?SELECT语句各子句的执行;7.2 简单查询;1.查询指定列 数据表中有很多列,通常情况下并不需要查看全部的列,因为不同的用户所关注的内容不同。 【例7-1】查询所有同学学号、姓名和成绩信息。 SELECT stu_id, name, grade FROM stu_info 在指定列查询中,列的显示顺序由SELECT子句指定,与数据在表中的存储顺序无关;同时,在查询多列时,用“,”将各字段隔开。 ; ;【例7-2】查询所有同学的所有信息。 SELECT * FROM stu_info 使用“*”通配符时要慎重,在不需要查询所有列时,尽量采用前面介绍的指定列查询,以免占用过多的资源。 ;3.使用运算列 在数据查询时,经常需要对表中的列进行计算,才能获得所需要的结果。在SELECT子句中可以使用各种运算符和函数对指定列进行运算。 ; ;4.改变列标题显示 通常,在查询结果中显示的列标题就是创建表时所使用的列名,但是,这在实际使用中往往会带来一些不便,如在上例中,普通用户不知道运算列所代表的含义。因此,可以利用’列标题’=列名 或 列名 AS ’列标题’ 来根据需要修改列标题的显示。; ; ; ; ; ; ; ;【例7-8】查询所有的男同学学号、姓名、生日和性别信息。 SELECT stu_id, name, birthday, sex FROM stu_info WHERE sex=’男’ 【例7-9】查询所有总分大于550分的同学学号、姓名、生日和性别信息。 SELECT stu_id, name, birthday, sex FROM stu_info WHERE mark 550;2.使用逻辑比较表达式 在WHERE子句中,可以使用多个搜索条件选择记录(行),即通过逻辑运算符(NOT、AND或OR)将多个单独的搜索条件结合在一个WHERE子句中,形成一个复合的搜索条件。当对复合搜索条件求值时,DBMS对每个单独的搜索条件求值,然后执行布尔运算来决定整个WHERE子句的值是TRUE还是FALSE。只有那些满足整个WHERE子句的值是TRUE的记录才出现在结果表中。 ;在查询中,各种逻辑运算符可以组合使用,即AND、OR、NOT运算符可以同时使用,但是需要注意运算的优先级的问题。这3种逻辑运算符中,NOT运算符的优先级最高,而后是AND,最后是OR。 【例7-12】查询所有信息学院和会计学院并且总分大于550分的同学信息。 SELECT * FROM stu_info WHERE ( sdept=信息学院 OR sdept=会计学院 ) AND mark 550 ; ;4.限定数据范围 在WHERE子句中,使用BETWEEN关键字可以方便地限制查询数据的范围。当然,还可以使用NOT BETWEEN关键字查询限定数据范围之外的记录。 使用BETWEEN限制查询数据范围时同时包括了边界值,而使用NOT BETWEEN进行查询时没有包括边界值。 ; ; ;6.模糊查询 在实际的应用中,用户不会总是能够给出精确的查询条件。因此,经常需要根据一些并不确切的线索来搜索信息。SQL Server提供了LIKE子句来进行这类模糊搜索。 LIKE子句在大多数情况下会与通配符配合使用。SQL Server提供了4种通配符供用户灵活实现复杂的模糊查询条件。;1)通配符% 通配符%表示任意字符的匹配,而且不计字符的多少,甚至可以为NULL。如:“计算机%”表示匹配以字符串“计算机”开头的任意字符串。 【例7-16】查询所有姓“张”的同学信息。 SELECT * FROM stu_info WHERE name LIKE ‘张%’ 另外,“%”通配符还经常用在NOT LIKE语句中实现排除查询。 ;2)通配符_ 与通配符“%”不同,通配符“_”只能匹配任何单个字符。比如,“_oom”表示将查找以“oom”结尾的所有4个字母的字符串(“Room”、“doom”、“3oom”等)。 【例7-17】查询所有姓“张”,而且姓名是两个字的同学信息。 SELECT * FROM stu_info WHERE name LIKE ‘张_’ ;3)通配符[] 通配符“[]”用于指定范围(如[a-z])或集合(如[abcdef])中的任何单个字符。只要满足这些字符其中之一,且位置出现在“[]”通配符位置的字符串就满足查询条件。 【例7-18】查询所有姓“张”或者姓“王”的同学信息。 SELECT * FROM stu_info WHERE name LIKE ‘[张王]%’ ;4)通配符[^] 与通配符“[]”相反,

文档评论(0)

js1180 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档