网站大量收购独家精品文档,联系QQ:2885784924

SQL结构化查询语言课件.ppt

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SQL结构化查询语言课件

第五章 SQL结构化查询语言;5.1~2 Select语句;5.3 基于单表的查询;显示表达式的值 select语句的选择列表也可是算术表达式、函数等。 select getdate() 返回当前服务器时间(返回类型是:datetime类型)。 select cast(year(getdate()) as char(4))+年+cast(month(getdate()) as char(2))+月+cast(day(getdate()) as char(2))+日 例5-5: select student_name,year(getdate())-year(born_date) 年龄 from student_info 使用distinct 消除重复的记录 例5-6查询所有学生所属班级的班号:select distinct class_no from student_info 使用where子句查询特定条件的记录 条件表达式可是关系(大、小、等)、逻辑(not、and、or)、特殊表达式及其混合。 条件表达式:、=、=、=、、!=(不等于也可写成 ) 数值、字符串(日期)都可以比较。例5-7、5-8:1980年以后:born_date’1980-12-31’ 逻辑表达式:not 非、and 且、or 或。例5-9~11。 特殊表达式: 通配符:%:任意多个字符;-:任意单个字符(有的DBS规定一个汉字是两个字符)。在SQL Server环境下,在通配符、字符串函数中,一个汉字是一个字符:select substring(‘数据库原理及应用’,1,3) 结果是:数据库。姓刘且双字的:student_name like ‘刘_’ 。 单个字符匹配符: [ ](通配符 — 需匹配的字符)匹配指定范围内或者属于方括号所指定的集合中的任意单个字符。 [^](通配符 — 无需匹配的字符)匹配不处于指定范围内或者不属于方括号内指定集合中的任意单个字符。;使用where子句查询特定条件的记录(特殊表达式);使用where子句查询特定条件的记录(特殊表达式);;使用Order by 对查询结果排序;SQL聚合函数;使用Group by子句对查询结果进行分组;使用Having子句对分好组后的查询结果进行筛选;5.4 基于多表的连接查询;;;等值连接;自然连接;;例5-32查询选修了“汇编语言”且其成绩在70分以上的学生的学号、姓名、课程名和成绩(其实课程名已固定为“汇编语言”,列在结果集里,可能是为了方便阅读结果。) select s.student_id,s.student_name,c.course_name,r.result from student_info s,course_info c,result_info r where s.student_id=r.student_id and c.course_no=r.course_no and c.course_name=汇编语言 and r.result70 表连接时,建议:先写连接条件,然后再一一列出查询条件,连接条件和查询条件之间用and。 P83习题5-2 (7)查询所有女生的马克思主义课程的成绩(除成绩之外,显然还至少要列出学号、姓名) select s.student_id,student_name,result from student_info s,course_info c,result_info r where s.student_id=r.student_id and c.course_no=r.course_no and student_sex=女 and course_name=马克思主义 对P83习题5-2 (7)扩充:列出学号、姓名、班级名称、成绩 select s.student_id,student_name,class_name from student_info s,course_info c,result_info r,class_info class where s.student_id=r.student_id and c.course_no=r.course_no and s.class_no=class.class_no and student_sex=女 and course_name=马克思主义 是四个表的连接。更多表的连接时,也按上面的建议,写where子句的条件表达式。;以Join关键字指定的连接(T-SQL中引入的);;外连接;交叉连接 cross join;5.5子查询;使用[not] in的子查询;更新语句中的子查询;使用比较运算符的子查询;使用 [not] exists的子查询;相关子查询;使用Union运算符合并

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档