数据库面试题(附答案).doc

上传人:hw****26 文档编号:3511098 上传时间:2019-06-01 格式:DOC 页数:3 大小:47KB
下载 相关 举报
数据库面试题(附答案).doc_第1页
第1页 / 共3页
数据库面试题(附答案).doc_第2页
第2页 / 共3页
数据库面试题(附答案).doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

1、一、 按部门名称查询出员工的人数大于等于 100 的语句.(员工:emp_employee, 部门名称: department,员工姓名 chnalias.)SELECT departrnent FROM emp_employee GROUP BY departrnent HAVING COUNT(*) =100二、把员工的姓名、性别和年龄显示出来。 (员工表 emp_employee, 员工姓名:chnalias,年龄 age,性别:gender。性别表:pub_gendar_info,性别名称:smpalias,与员工表的性别关SELECT e.chnalias,g.smpalias,e.

2、age FROM emp_employee e INNER JOIN pub_gendar g ON e.gendar = g.smpalias三、当部门表的名称为空时,用 0 来代替。 (部门表 org_department 名称 smpalias)SELECT (CASE WHEN smpalias=null THEN 0 ELSE smpalias END) AS 部门名称 FROM org_departmenSelect replace(smpalias,null,0) from org_department四、删除员工表中的姓名重复的数据,只保留重复数据中的一条数据。 (员工表emp

3、_employee,员工姓名:chnalias)DELETE FROM emp_employee WHERE id NOT IN ( SELECT MAX(id) AS id FROM emp_employee GROUP BY chnalias )五、有三个部门:1 人力资源部,2 信息中心,3.安全监察部分别把这个三个部门的人员统计出来。要求用 sql 语句一行来实现 (员工表 emp_employee,员工姓名:chnalias,员工表对应的部门 id:department. 。部门表:org_departmen 。部门表的字段:部门名称smpalias,部门主键: id)部门表的 id

4、=员工表的 department显示的结果应该是:人力资源部 信息中心 安全监察部10 20 30SELECT SUM (f.s1) AS 人力资源部 , SUM (f.s2) AS 信息中心 , SUM (f.s3)AS 信息中心 from (SELECT(CASE WHEN d.smpalias=人力资源部 THEN SUM(e.Departid) END) AS s1,(CASE WHEN d.smpalias=信息中心 THEN SUM(e.Departid) END) AS s2,(CASE WHEN d.smpalias=安全监察部 THEN SUM(e.Departid) END

5、) AS s3FROM emp_employee e INNER JOIN org_departmen d ON e.departId=d.idGROUP BY d.smpalias ) f六、查询出差表中的每个员工最近的出差时间和员工姓名(出差表 emp_travel,员工姓名 chnalias,出差时间 godate)SELECT chnalias,godate FROM emp_travel ORDER BY godate DESC七、请写一个存储过程,把 emp_employee 表中的 chnalias 这个字段的名称更新为您好。CREATE PROC proc_updateempA

6、SUPDATE FROM emp_employee SET chnalias = 您好 GOEXEC proc_updateemp八、请写一个函数,用来实现把一个字段的内容横向显示出来。 (表 pub_codeitem_inf,代码组字段 groupcode,名称字段:smpalias.每行内容用逗号分开)create function dbo.f_str(id int) return varchar(100)asbegindeclare str varchar(1000)set str=;select str=str+,+cast(smpalias as varchar) from pub_

7、codeitem_inf where groupcode=idset str=right(str,len(str)-1)return strendgo-调用函数select groupcode,smplias=dbo.f_str(groupcode) from pub_codeitem_inf group by groupcode九、请写一个游标用来把表中的数据显示出来(表 emp_employee,显示姓名 chnalias 和单位company)Create proc employeecompany varchar(50)=chnalias varchar(50)=asdeclare cu

8、rListset curList= cursor forselect chnalias,company from emp_employeeopen curList fetch next from curList into chnalias,companywhile(fetch status=0)beginprint chnalias+companyfetch next from curList into chnalias,companyendclose curListdeallocate curList十、请用 sql 语句写一个从 1 减到 100 的语句出来。Declare star int ,sum intSelect star =1,sum=0While(star=100)BeginSet sum= sum - starSet star= star + 1End Select sum

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 实用文档资料库 > 策划方案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。