T-SQL实训.docVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
T-SQL实训题目 一、用T—SQL语句查询数据 (一)简单查询(用T—SQL语句实现) 检索“客房信息”表中有哪几种客房状态?(DISTINCT) 检索“教师档案表”中教师有那几种学历? 检索“教师档案表”中教师有那几种职称? 检索“教师档案表”中教师有那些不同学历职称组合? 检索“项目属性表”表中有哪几种项目大类和小类? 检索“报名表2010”表中有哪些参赛队报了男子“五项全能”项目? 检索“入住单”表中的前10条记录?(TOP 10 *) 检索“入住单”表中的前10%条记录?(TOP 10 PERCENT) 检索“学生档案表”中前8条记录? 检索学生档案表中前30%条记录? 检索学生档案表中前4条女生记录? 检索教师档案表中前25%条党员教师记录? 检索“总积分排名表”中的前6条记录? 检索“总积分排名表”中类别为“教工”的前6条记录? 检索“总积分排名表”中类别为“学生”的前3名的记录? 检索“总积分排名表”中类别为“教工”中的排名在前25%的记录? 检索入住单号为R记录? 检索教师档案表中学历为研究生的教师的信息? 检索学生档案表中1988年1月30日以前出生的学生信息?(convert(varchar(10),出生日期,126) 1988-1-30 或 datediff(day, 出生日期, 1988-1-30)0) 检索教师档案表中为“党员”“教授”的教师信息? 检索“24”班的学生学号和姓名? 检索所有教师的姓名、学历和职称? 检索所有教师的姓名和工龄?(datediff函数) 检索所有学生的姓名、性别和年龄? 通过“客房信息”表统计各类型编号客房的数目? 通过“客房信息”表统计各类型编号客房的床的总数量? 通过“课程名表”统计各种类别课程的平均学分? 通过“学生成绩表”统计各学生(按学号)的平均成绩,最高分和最低分? 通过“学生成绩表”统计各门课程(按课程编号)在各学期的平均成绩,最高分和最低分? 通过“教师档案表”统计不同学历与职称的教师的人数? 检索非党员中姓“张”和姓“王”的学生信息? SQL SERVER 通配符 通配符 说明 _ 表示任意单个字符 % 表示任意长度的字符串 [ ] 与特定范围(例如,[a-f])或特定集(例如,[abcdef])中的任意单字符匹配。 [^] 与特定范围(例如,[^a-f])或特定集(例如,[^abcdef])之外的任意单字符匹配。 检索选修了“A01”课程且成绩在80-90之间的学生学号、课程编号和成绩? 检索课程名中含有“原理”的课程的所有信息; 检索出学生的学号,姓氏(计算字段),名字(计算字段),性别的信息(其中所有学生都是单姓); 通过“报名表2010”统计各类别、组别、项目的预赛分组数(字段:分组数1)和报名人数。 通过“报名表2010”统计各参赛队的报名的男、女人次。 (二)交叉表查询 通过“报名表2010”统计各参赛队的报名的男、女人次和总人次。(“交叉表”方式实现) 提示:(1)游标方式 use LZYSports declare @SQL_Str varchar(1000) set @SQL_Str=select 参赛队, declare cur cursor for select distinct 性别 from 报名表2010 order by 性别 open cur print @@cursor_rows declare @XB varchar(30) fetch next from cur into @XB while @@fetch_status=0 begin set @SQL_Str=@SQL_Str+ count(case 性别 when + @XB + then 报名号 else null end) as + @XB + , fetch next from cur into @XB end set @SQL_Str=left(@SQL_Str,len(@SQL_Str)-1)+ from 报名表2010 group by 参赛队 exec (@SQL_Str) close cur deallocate cur (2)普通方式 use LZYSports declare @SQL_Str varchar(1000) set @SQL_Str=select case when grouping(参赛队)=1 then 合计 else 参赛队 end as 参赛队, select @SQL_Str=@SQL_Str+ count(case 性别 when + 性别+ then 姓名 else null end) as

文档评论(0)

精华文档888 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档