第2讲Transact-SQL语言.pptVIP

  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文档。上传文档
查看更多
第2讲 Transact-SQL语言 Transact-SQL语言概述 第1节 单表查询 问题: 我们需要对数据进行哪些维护操作?如何对数据进行查询、统计? 结构化查询语言(Structured Query Language)。这种语言的语法结构类似于英语,易学易用,书写随意。[例如前面第一章讲过的例子] Transact-SQL语言的组成 1、数据定义语言DDL:用来定义和管理数据库中的对象。 DDL主要的语句有: CREAT TABLE /*创建表*/ ALTER TABLE /*修改表的属性*/ DROP TABLE /*删除表*/ 2、数据操作语言DML:用来操作数据库中的对象和数据,是T-SQL中最常用的部分。 DML主要的语句有: ?SELECT /*从一个表或多个表中检索数据*/ DELETE /*从表中删除数据*/ INSERT /*向一个表中添加数据*/ UPDATE /*修改表中已有的数据*/ ?3、数据控制语言DCL:用来控制用户对数据库对象操作的权限。 主要的命令有: GRANT /*授予权限*/ REMOVE /*回收所授予的权限*/ 操作数据 打开一个数据库? 使用SELECT子句 SELECT子句主要用于检索数据,其基本格式为: SELECT 选择列表 FROM 表的列表 WHEAR 检索的条件 【问题】从Student表中检索学号学生的姓名(StuName),要求显示学生的学号和姓名 【练习】要求检索系部编号为01的班级信息,要求显示班级编号和班级名称 1、*的使用 【例】显示学生表中所有信息 【例】从学生表中检索学生所在班的班级编码 2、使用DISTINCT 【例】从学生表中检索学生所在班的班级编码,要求清除值相同的那些行 ?3、使用TOP n [PERCENT] 【例】从学生表中检索所有的信息,要求只显示前6行数据? 4、修改检索结果中列的标题 【问题】检索学生表中的学号、班级编码和姓名信息,并修改列标题 ? 方法有三: (1)将要显示的列标题用单引号括起来后接等号(=), 后接要检索的列名 (2)将要显示的列标题用单引号括起来后,写在列名后面,两者之间使用空格隔开 (3)将要显示的列标题用单引号括起来后,写在列名后面,两者之间使用AS关键字 ?【练习】使用其他两种方法 5、在查询结果中显示字符串 【问题】检索课程表的信息,要求给出检索结果为: 课程名称 课程编码 SQL Server实用技术 课程编码为: 001 …… 课程编码为: …… …… 课程编码为: …… ? ? 思考:如何检索课程编码是001的课程名称? 6、使用WHERE限制检索的条件 【例】检索课程编码为001的课程名称,要求只显示课程名称 ? 【练习】检索上“Linux操作系统”课程的教师名 ? 7、表达式作为SELECT语句中的列 【例】要求检索课程表的课程信息,并显示报名人数和限制选课人数之比 思考:如何将上面的检索结果按报名人数和限制选课人数之比的升序排列? ? 8、使用ORDER BY子句重新排列检索结果 ?【升序例子】 【降序例子】 也可以在ORDER BY子句中指定多个列 【例】检索课程表的教师名、课程号、课程名,要求检索结果首先按教师名降序排列,教师名相同时,则按课程号的升序排列 9、使用IN(NOT IN)关键字 【例】检索课程编码为‘001’‘004’‘013’的课程名称 方法一:使用逻辑运算符OR 方法二:使用IN关键字(比使用逻辑运算符更为简单) 问题 检索开设了“信息技术”类课程的教师名及其所开的课程名,要求先按教师名升序排列,教师名相同时,按课程名的降序排列,并将显示的列名改为中文。 操作数据(续) 1、使用LIKE(NOT LIKE)关键字 通配符: % 匹配包括0个或多个字符的字符串 _ 匹配任何一个字符 [] 匹配任何在范围内的单个字符,例如:[m-p] [^] 匹配任何不在范围内的单个字符,例如:[^m-p]、[^mnop] 通配符和字符串要括在单引号中 ?【练习】解释下面的通配符表示的意义 %D% _[^a] [[] ——如果要查找通配符本身,需要将它们用方括号括起来 [%]D 【问题】检索以“制作”两字结尾的课程名(使用LIKE) 【练习】检索姓名的第二个字为“丽”的学生信息,要求显示学生学号和姓名 【问题】检索不姓“刘”的学生信息(使用NOT LIKE) 2、使用IS NULL关键字——用于检索列中没有赋值的行 【问题】检索课程表中教师未定的课程名称和教师名 3、使用BETWEEN…AND(NOT BETWEEN…AN

文档评论(0)

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

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

1亿VIP精品文档

相关文档