欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    最新SQL语句面试题范文.doc

    • 资源ID:47991827       资源大小:148KB        全文页数:29页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    最新SQL语句面试题范文.doc

    Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-dateSQL语句面试题范文SQL语句面试题范文1.一道SQL语句面试题,关于group by表内容:2005-05-09 胜2005-05-09 胜2005-05-09 负2005-05-09 负2005-05-10 胜2005-05-10 负2005-05-10 负如果要生成下列结果, 该如何写sql语句?            胜 负2005-05-09 2 22005-05-10 1 2-create table #tmp(rq varchar(10),shengfu nchar(1)insert into #tmp values('2005-05-09','胜')insert into #tmp values('2005-05-09','胜')insert into #tmp values('2005-05-09','负')insert into #tmp values('2005-05-09','负')insert into #tmp values('2005-05-10','胜')insert into #tmp values('2005-05-10','负')insert into #tmp values('2005-05-10','负')1)select rq, sum(case when shengfu='胜' then 1 else 0 end)'胜',sum(case when shengfu='负' then 1 else 0 end)'负' from #tmp group by rq2) select N.rq,N.勝,M.負 from (select rq,勝=count(*) from #tmp where shengfu='胜'group by rq)N inner join(select rq,負=count(*) from #tmp where shengfu='负'group by rq)M on N.rq=M.rq3)select a.rq,a.a1 胜,b.b1 负 from (select rq,count(rq) a1 from #tmp where shengfu='胜' group by rq) a,(select rq,count(rq) b1 from #tmp where shengfu='负' group by rq) b  where a.rq=b.rq2.请教一个面试中遇到的SQL语句的查询问题表中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列。-create table #tmp(A int,B int,C int)insert into #tmp values('10','20','30')-insert into #tmp values('10','30','20')-insert into #tmp values('40','10','20')select * from #tmpselect (case when a>b then a else b end),(case when b>c then b else c end ) from #tmp3.面试题:一个日期判断的sql语句?请取出tb_send表中日期(SendTime字段)为当天的所有记录?(SendTime字段为datetime型,包含日期与时间)-select * from #tmp where datediff(dd,rq,getdate()=0select * from #tmp where rq=rtrim(convert(varchar,getdate(),23)4.有一张表,里面有3个字段:语文,数学,英语。其中有3条记录分别表示语文70分,数学80分,英语58分,请用一条sql语句查询出这三条记录并按以下条件显示出来(并写出您的思路):     大于或等于80表示优秀,大于或等于60表示及格,小于60分表示不及格。         显示格式:         语文              数学                英语         及格              优秀                不及格    -create table #tmp(语文 int,数学 int ,英语 int)insert into #tmp values('70','80','58')-insert into #tmp values('100','50','60')select * from #tmpselect (case when 语文 >=80 then '优秀'              when 语文 >=60 then '及格'             else '不及格' end ) 语文,       (case when 数学 >=80 then '优秀'              when 数学 >=60 then '及格'             else '不及格' end ) 数学,       (case when 英语 >=80 then '优秀'              when 英语 >=60 then '及格'             else '不及格' end ) 英语 from #tmp5.在sqlserver2000中请用sql创建一张用户临时表和系统临时表,里面包含两个字段ID和IDValues,类型都是int型,并解释下两者的区别?-用户临时表:create table #xx(ID int, IDValues int)系统临时表:create table #xx(ID int, IDValues int)区别:用户临时表只对创建这个表的用户的Session可见,对其他进程是不可见的.当创建它的进程消失时这个临时表就自动删除.全局临时表对整个SQL Server实例都可见,但是所有访问它的Session都消失的时候,它也自动删除.6.sqlserver2000是一种大型数据库,他的存储容量只受存储介质的限制,请问它是通过什么方式实现这种无限容量机制的。-它的所有数据都存储在数据文件中(*.dbf),所以只要文件够大,SQL    Server的存储容量是可以扩大的.SQL Server 2000 数据库有三种类型的文件:主要数据文件主要数据文件是数据库的起点,指向数据库中文件的其它部分。每个数据库都有一个主要数据文件。主要数据文件的推荐文件扩展名是 .mdf。次要数据文件次要数据文件包含除主要数据文件外的所有数据文件。有些数据库可能没有次要数据文件,而有些数据库则有多个次要数据文件。次要数据文件的推荐文件扩展名是 .ndf。日志文件日志文件包含恢复数据库所需的所有日志信息。每个数据库必须至少有一个日志文件,但可以不止一个。日志文件的推荐文件扩展名是 .ldf。7.请用一个sql语句得出结果从table1,table2中取出如table3所列格式数据,注意提供的数据及结果不准确,只是作为一个格式向大家请教。如使用存储过程也可以。table1月份mon 部门dep 业绩yj-一月份      01      10一月份      02      10一月份      03      5二月份      02      8二月份      04      9三月份      03      8table2部门dep      部门名称dname-      01      国内业务一部      02      国内业务二部      03      国内业务三部      04      国际业务部table3 (result)部门dep 一月份      二月份      三月份-      01      10        null      null      02      10         8        null      03      null       5        8      04      null      null      9-create table #A(mon varchar(10),dep varchar(10) ,yj int)insert into #A values('一月份','01','10')insert into #A values('一月份','02','10')insert into #A values('一月份','03','5')insert into #A values('二月份','02','8')insert into #A values('二月份','04','9')insert into #A values('三月份','03','8')select * from #Acreate table #B(dep varchar(10),dname varchar(20)insert into #B values('01','国内业务一部')insert into #B values('02','国内业务二部')insert into #B values('03','国内业务三部')insert into #B values('04','国际业务部')select * from #b-1)select dep,(select SUM(yj) from #A where MON='一月份' and #A.dep=#B.dep) 一月份,           (select SUM(yj) from #A where MON='二月份' and #A.dep=#B.dep) 二月份,           (select SUM(yj) from #A where MON='三月份' and #A.dep=#B.dep) 三月份       from #B 2)select b.dep,dname,       sum(case when a.mon='一月份' then a.yj else 0 end ) as '一月份',       sum(case when a.mon='二月份' then a.yj else 0 end ) as '一月份',       sum(case when a.mon='三月份' then a.yj else 0 end ) as '一月份'from  #B b left join  #A a on a.dep=b.dep group by b.dep ,dname -order by b.dep ?)select a.部门名称dname,b.业绩yj as '一月份',c.业绩yj as '二月份',d.业绩yj as '三月份'from table1 a,table2 b,table2 c,table2 dwhere a.部门dep = b.部门dep and b.月份mon = '一月份' anda.部门dep = c.部门dep and c.月份mon = '二月份' anda.部门dep = d.部门dep and d.月份mon = '三月份' and8.华为一道面试题一个表中的Id有多个记录,把所有这个id的记录查出来,并显示共有多少条记录数。-create table #B(dep varchar(10),dname varchar(20)insert into #B values('01','国内业务一部')insert into #B values('02','国内业务二部')insert into #B values('03','国内业务三部')insert into #B values('04','国际业务部')insert into #B values('01','国内业务一部')insert into #B values('02','国内业务二部')insert into #B values('01','国内业务三部')insert into #B values('03','国际业务部')select * from #bselect dep,count(dep) from #B  group by dep having count(*)>1select count(*) from #B  group by dep having count(*)>1select * from(select count(dep) as count from #B group by dep)T where T.count>1题目1:问题描述:为管理岗位业务培训信息,建立3个表: S (S#,SN,SD,SA) S#,SN,SD,SA 分别代表学号、学员姓名、所属单位、学员年龄 C (C#,CN ) C#,CN 分别代表课程编号、课程名称 SC ( S#,C#,G ) S#,C#,G 分别代表学号、所选修的课程编号、学习成绩 1. 使用标准SQL嵌套语句查询选修课程名称为税收基础的学员学号和姓名 -实现代码: Select SN,SD FROM S Where S# IN( Select S# FROM C,SC Where C.C#=SC.C# AND CN=N'税收基础')  2. 使用标准SQL嵌套语句查询选修课程编号为C2的学员姓名和所属单位 -实现代码: Select S.SN,S.SD FROM S,SC Where S.S#=SC.S# AND SC.C#='C2' 3. 使用标准SQL嵌套语句查询不选修课程编号为C5的学员姓名和所属单位 -实现代码: Select SN,SD FROM S Where S# NOT IN( Select S# FROM SC Where C#='C5') 4. 使用标准SQL嵌套语句查询选修全部课程的学员姓名和所属单位 -实现代码: Select SN,SD FROM S Where S# IN( Select S# FROM SC RIGHT JOIN C ON SC.C#=C.C# GROUP BY S# HAVING COUNT(*)=COUNT(S#) 5. 查询选修了课程的学员人数 -实现代码: Select 学员人数=COUNT(DISTINCT S#) FROM SC 6. 查询选修课程超过5门的学员学号和所属单位 -实现代码: Select SN,SD FROM S Where S# IN( Select S# FROM SC GROUP BY S# HAVING COUNT(DISTINCT C#)>5)题目2:问题描述: S (SNO,SNAME) 学生关系。SNO 为学号,SNAME 为姓名 C (CNO,CNAME,CTEACHER) 课程关系。CNO 为课程号,CNAME 为课程名,CTEACHER 为任课教师 SC(SNO,CNO,SCGRADE) 选课关系。SCGRADE 为成绩 1. 找出没有选修过“李明”老师讲授课程的所有学生姓名 -实现代码: Select SNAME FROM S Where NOT EXISTS( Select * FROM SC,C Where SC.CNO=C.CNO AND CNAME='李明' AND SC.SNO=S.SNO)  2. 列出有二门以上(含两门)不及格课程的学生姓名及其平均成绩 -实现代码: Select S.SNO,S.SNAME,AVG_SCGRADE=AVG(SC.SCGRADE) FROM S,SC,( Select SNO FROM SC Where SCGRADE<60 GROUP BY SNO HAVING COUNT(DISTINCT CNO)>=2 )A Where S.SNO=A.SNO AND SC.SNO=A.SNO GROUP BY S.SNO,S.SNAME 3. 列出既学过“1”号课程,又学过“2”号课程的所有学生姓名 -实现代码: Select S.SNO,S.SNAME FROM S,( Select SC.SNO FROM SC,C Where SC.CNO=C.CNO AND C.CNAME IN('1','2') GROUP BY SNO HAVING COUNT(DISTINCT CNO)=2 )SC Where S.SNO=SC.SNO  4. 列出“1”号课成绩比“2”号同学该门课成绩高的所有学生的学号 -实现代码: Select S.SNO,S.SNAME FROM S,( Select SC1.SNO FROM SC SC1,C C1,SC SC2,C C2 Where SC1.CNO=C1.CNO AND C1.NAME='1' AND SC2.CNO=C2.CNO AND C2.NAME='2' AND SC1.SCGRADE>SC2.SCGRADE )SC Where S.SNO=SC.SNO   5. 列出“1”号课成绩比“2”号课成绩高的所有学生的学号及其“1”号课和“2”号课的成绩 -实现代码: Select S.SNO,S.SNAME,SC.1号课成绩,SC.2号课成绩 FROM S,( Select SC1.SNO,1号课成绩=SC1.SCGRADE,2号课成绩=SC2.SCGRADE FROM SC SC1,C C1,SC SC2,C C2 Where SC1.CNO=C1.CNO AND C1.NAME='1' AND SC2.CNO=C2.CNO AND C2.NAME='2' AND SC1.SCGRADE>SC2.SCGRADE )SC Where S.SNO=SC.SNO-

    注意事项

    本文(最新SQL语句面试题范文.doc)为本站会员(1595****071)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开