sql经典面试题.docx

上传人:rrsccc 文档编号:9869232 上传时间:2021-03-31 格式:DOCX 页数:5 大小:15.51KB
返回 下载 相关 举报
sql经典面试题.docx_第1页
第1页 / 共5页
sql经典面试题.docx_第2页
第2页 / 共5页
sql经典面试题.docx_第3页
第3页 / 共5页
sql经典面试题.docx_第4页
第4页 / 共5页
sql经典面试题.docx_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《sql经典面试题.docx》由会员分享,可在线阅读,更多相关《sql经典面试题.docx(5页珍藏版)》请在三一文库上搜索。

1、sql经典面试题1、一张表,3个字段name、kecheng、fenshu。用一条SQL语句查出每门课都大于80分的学生姓名如: name kecheng fenshu张三 语文 81张三 数学 75.王五 数学 902、自动编号 学号 姓名 课程 分数1 001 张三 数学 692 002 王五 语文 893 001 张三 数学 69删除除自动编号不同外,其他都相同的重复信息3、year month amount1991 1 1.11991 2 1.21991 3 1.31992 1 2.1.1992 3 2.3如何将上表查询出如下结果year m1 m2 m3 1991 1.1 1.2 1

2、.31992 2.1 . 2.3.4、两张关联表,删除主表中已经在副表中没有的信息5、查询a表中第31到40条记录。ID作为主键可能不是连续增长的列6、查询表a中存在ID重复3次以上的记录7、表aid kecheng fenshu1 java 702 .net 603 xml 30要求查询结果(增加一列,60分为及格)id kecheng fenshu mark1 java 70 pass2 .net 60 pass3 xml 30 fail.8、数据表name code张三 语文;数学;英语李四 语文;物理王五 数学要求输出为:name code张三 3李四 2王五 19、数据表topeid

3、 name code1 张三 语文2 张三 数学3 李四 物理4 王五 数学5 张三 英语6 李四 语文要求输出为:name code张三 语文;数学;英语李四 物理;语文王五 数学10、索引的作用,及其优缺点索引是一种特殊的查询表,数据库的搜索引擎可利用它加速对数据的检索。它类似于书中的目录。缺点是减慢了数据的录入速度,增加了数据库的大小11、内存泄露一般指堆内存泄露。堆内存时从堆中为其分配的,大小任意,使用完要显式释放的内存。用new创建对象时,就从堆中为其分配内存,如使用完未释放该内存,该内存就不能被使用。就说该内存泄露了。12、维护数据库完整性和一致性尽可能使用约束:check、主外键

4、、非空字段等,方便效率高;其次使用触发器。最后是自写业务逻辑13、事务和锁事务是绑定到一起作为一个逻辑工作单元的sql语句分组,如任一个语句操作失败就视作整个操作失败。操作将回滚到操作前状态。锁: 实现事务的关键。可以保证事务的完整性和并发性。可以使某些数据的拥有者在某段时间内不能使用某些数据或数据结构。14、视图和游标视图时一种虚拟表,具有与物理表相同的功能,可对视图增删改查。视图通常是一个或多个表的行或列的子集。对视图的修改不影响基本表。使获取数据更容易,相比多表查询。游标: 对查询出来的结果集做一个单元来有效处理。游标可定在该单元中的特定行,从结果集的当前行检索一行或多行。可对结果集当前

5、行做修改。一般不使用游标,但当需逐条处理数据时,游标显得很重要。15、存储过程的概念、优点(或特点),写一个简单的存储过程存储过程: 是一组为了完成特定功能的SQL语句集,利用SQL Server所提供的T-SQL语言所编写的程序,经编译后存储在数据库中。优点: 1.执行速度快。存储过程只在创造时进行编译,以后每次执行不需再重新编译,一般SQL语句每执行一次就编译一次2.存储过程可重复使用 3.安全性高。(可设定只有某些用户才具有对指定存储过程的使用权)4.当对数据库进行复杂操作时,可完成复杂的判断和较复杂的运算,可用存储过程封装起来5.易于维护和集中控制。当企业规则变化时在服务器中改变存储过

6、程即可,无须修改应用程序简单的存储过程:create proc select_query year int as select * from tmp where year=year 16、内联、外联的概念及区别;左联右联的区别左联接是在左边表和右边表不匹配的记录也显示出已NULL填充17、索引类型主索引: 确保字段中输入的是唯一值并确定记录的处理顺序,每个表只能由一个主索引。具有唯一性、非空值性候选索引: 也强调唯一性、非空值性,但一个表可有多个候选索引。无主索引时可成为主索引唯一索引: 强调唯一性,但可为空值普通索引: 可以有重复值,表中可有多个普通索引18、触发器(Trigger)是一种特

7、殊的存储过程,是在执行某些特定的T-SQL语句时自动执行的一种存储过程 SQLServer2005中,根据SQL语句的不同,分为:DML触发器、DLL触发器DML触发器: 当数据库服务器中发生数据操作语言事件时执行的存储过程。分为:After触发器和Instead Of触发器DDL触发器特殊的触发器,在响应数据定义语言(DDL)语句时触发。一般用于数据库中执行管理任务DDL触发器是响应Create、 Alter或Drop开头的语句而激活答案:1、select distinct name from table where name not in (select distinct name fro

8、m table wherefenshu802、delect table where 自动编号 not in (select min(自动编号) from table group by 学号,姓名,课程,分数)3、select year,(select amount from a m where month=1 and m.year=a.year) as m1,(select amount from a m where month=2 and m.year=a.year) as m2,. month=3 . m3from a group by year4、delete from a where

9、not exists(select * from b where a.id=b.id)5、select top 10 * from a where id not in (select top 30 id from a order by id) order by id6、select * from (select count(id) as count from a group by id)T where T.count37、select id,kecheng,fenshu,(case when fenshu0beginset result=result+1set index=charindex(

10、;,code,index+1)endprint name+ +cast(result as nchar(50)-select name=name,code=cast(result as nchar(50)fetch from tope_cursor into name,codeendclose tope_cursordeallocate tope_cursorgo9、本题用嵌套游标来实现-结果已经过验证use stugodeclare name nchar(20),code nvarchar(100),result nvarchar(100)declare t1_cursor CURSOR f

11、or select name from tope group by nameopen t1_cursor fetch from t1_cursor into namewhile fetch_status=0begindeclare t2_cursor CURSOR for select code from tope where name=nameopen t2_cursorfetch from t2_cursor into codeset result=while fetch_status=0beginif result=set result=ltrim(rtrim(code)elseset result=result+;+ltrim(rtrim(code)fetch from t2_cursor into codeendclose t2_cursordeallocate t2_cursorprint name+resultfetch from t1_cursor into nameendclose t1_cursordeallocate t1_cursorgo

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1