资源描述:
《数据库面试题(附答案)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、一、按部门名称查询出员工的人数大于等于100的语句.(员工:emp_employee,部门名称:department,员工姓名chnalias.)SELECTdepartrnentFROMemp_employeeGROUPBYdepartrnentHAVINGCOUNT(*)>=100二、把员工的姓名、性别和年龄显示出来。(员工表emp_employee,员工姓名:chnalias,年龄age,性别:gender。性别表:pub_gendar_info,性别名称:smpalias,与员工表的性别关SELECTe.chnalias,g.smpalias,e.ageFROMemp_emplo
2、yeeeINNERJOINpub_gendargONe.gendar=g.smpalias三、当部门表的名称为空时,用0来代替。(部门表org_department名称smpalias)SELECT(CASEWHENsmpalias=’null’THEN'0'ELSEsmpaliasEND)AS'部门名称'FROMorg_departmenSelectreplace(smpalias,’null’,’0’)fromorg_department四、删除员工表中的姓名重复的数据,只保留重复数据中的一条数据。(员工表emp_employee,员工姓名:chnalias)DELETEFROMem
3、p_employeeWHEREidNOTIN(SELECTMAX(id)ASidFROMemp_employeeGROUPBYchnalias)五、有三个部门:1人力资源部,2信息中心,3.安全监察部分别把这个三个部门的人员统计出来。要求用sql语句一行来实现(员工表emp_employee,员工姓名:chnalias,员工表对应的部门id:department.。部门表:org_departmen。部门表的字段:部门名称smpalias,部门主键:id)部门表的id=员工表的department显示的结果应该是:人力资源部信息中心安全监察部102030SELECTSUM(f.s1)AS
4、'人力资源部',SUM(f.s2)AS'信息中心',SUM(f.s3)AS'信息中心'from(SELECT(CASEWHENd.smpalias='人力资源部'THENSUM(e.Departid)END)ASs1,(CASEWHENd.smpalias='信息中心'THENSUM(e.Departid)END)ASs2,(CASEWHENd.smpalias='安全监察部'THENSUM(e.Departid)END)ASs3FROMemp_employeeeINNERJOINorg_departmendONe.departId=d.idGROUPBYd.smpalias)f六、查询
5、出差表中的每个员工最近的出差时间和员工姓名(出差表emp_travel,员工姓名chnalias,出差时间godate)SELECTchnalias,godateFROMemp_travelORDERBYgodateDESC七、请写一个存储过程,把emp_employee表中的chnalias这个字段的名称更新为'您好'。CREATEPROCproc_updateempASUPDATEFROMemp_employeeSETchnalias='您好'GOEXECproc_updateemp八、请写一个函数,用来实现把一个字段的内容横向显示出来。(表pub_codeitem_inf,代码组字
6、段groupcode,名称字段:smpalias.每行内容用逗号分开)createfunctiondbo.f_str(@idint)returnvarchar(100)asbegindeclare@strvarchar(1000)set@str='';select@str=@str+','+cast(smpaliasasvarchar)frompub_codeitem_infwheregroupcode=@idset@str=right(@str,len(@str)-1)return@strendgo--调用函数selectgroupcode,smplias=dbo.f_str(grou
7、pcode)frompub_codeitem_infgroupbygroupcode九、请写一个游标用来把表中的数据显示出来(表emp_employee,显示姓名chnalias和单位company)Createprocemployee@companyvarchar(50)=’’@chnaliasvarchar(50)=’’asdeclare@curListset@curList=cursorforselectchnalias,co