- 1、本文档共33页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
回顾 T-SQL语言基础 1.数据类型和常量 2.局部变量和全局变量 3.运算和表达式 4.流程控制语句 5.系统函数 数据查询与视图 1 T-SQL高级查询 1.1 连接查询 1.1 连接查询外连接 1.1 连接查询 1.2 使用分组 1.3 合并结果集 1.4 汇总计算 1.5 子查询 3.5 子查询 2 视图 2.1 视图的概念 2.2 创建视图 4.2 创建视图 2.3 修改视图 2.4 查询视图 2.5 通过视图更新数据 2.6 删除视图 2.7使用视图的优点及注意事项 4.7 使用视图的优点及注意事项 小结 小结 高级查询包括连接查询、使用分组、合并结果集、汇总计算和子查询 视图包括视图的概念、创建视图、修改视图、查询视图、利用视图更新数据和删除视图 SELECT 字段列表 FROM 数据表\视图,… 查询 DELETE 表名\视图名[WHERE 条件] 删除 UPDATE 表名\视图名 SET 列名= 表达式 [WHERE 条件] 修改 INSERT [INTO] 表名\视图名 [(列名1,…) ] Values (表达式1,…) 插入 数据操作 DROP VIEW 视图名[,…n] 删除 ALTER VIEW 视图名[(列名1 [,…n])] AS 查询语句 修改 CREATE VIEW 视图名[(列名1 [,…n])] AS 查询语句 创建 定义 视图 语法格式 语句 第十三讲 查询和视图 1 T-SQL高级查询 2 视图 3 小结 1.1 连接查询 1.2 使用分组 1.3 合并结果集 1.4 汇总计算 1.5 子查询 连接类型:内连接、外连接、自连接、交叉连接 1.内连接(自然连接) FROM 表1 [inner] JOIN 表2 ON 条件表达式1 从学生信息表和教学成绩表中查询学生的学号、姓名、课程编号和分数 use 教学成绩管理数据库 select 教学成绩表.学号,姓名,课程编号,分数 from 教学成绩表,学生信息表 where 教学成绩表.学号 = 学生信息表.学号 为数据表指定别名 从学生信息表、教学成绩表和课程信息表中查询学生的学号、姓名、课程名称和分数 use 教学成绩管理数据库 select cj.学号,姓名,kc.名称,分数 from 教学成绩表 as cj inner join 学生信息表 as xs on cj.学号 = xs.学号 inner join 课程信息表 as kc on cj.课程编号 = kc.编号 (1)左连接: FROM 表1 LEFT [OUTER] JOIN 表2 ON 条件表达式 从[学生信息表]、[教学成绩表]和[课程信息表]中查询查询学生的[学号]、[姓名]、[课程名称]和[分数] use 教学成绩管理数据库 select xs.学号,姓名,kc.名称,分数 from 学生信息表 as xs left join 教学成绩表 as cj on cj.学号 = xs.学号 left join 课程信息表 as kc on cj.课程编号 = kc.编号 (2)右外连接: FROM 表1 RIGHT [OUTER] JOIN 表2 ON 条件表达式 从[学生信息表]、[教学成绩表]和[课程信息表]中查询查询学生的[学号]、[姓名]、[课程名称]和[分数] use 教学成绩管理数据库 select xs.学号, 姓名, kc.名称, 分数 from 教学成绩表 as cj join 学生信息表 as xs on cj.学号 = xs.学号 right join 课程信息表 as kc on cj.课程编号 = kc.编号 (3)全外连接: FROM 表1 FULL [OUTER] JOIN 表2 ON 条件表达式 从[学生信息表]和[教师信息表]中查询同姓的教师和学生的[姓名] use 教学成绩管理数据库 select left(xs.姓名,1) as 姓氏,xs.姓名 as 学生姓名,js.姓名 as 教师姓名 from 教师信息表 as js full join 学生信息表 as xs on left(js.姓名,1) = left(xs.姓名,1) 3.自连接 在同一张表内进行自身连接 (必须为表指定两个别名 ) 从学生信息表中查询同名学生的姓名和学号 use 教学成绩管理数据库 select xs1.姓名,xs1.学号 ,xs2.学号 from 学生信息表 as xs1 join 学生信息表 as xs2 on xs1.姓名 = xs2.姓名 where xs1.学号xs2.学号 4.交叉连接 非
文档评论(0)