admin 管理员组文章数量: 1086019
2024年4月17日发(作者:易语言游戏登录器源码)
数据库sql面试题及答案
【篇一:sql数据库经典面试题(修改笔试题)(有答案)】
部门,平均工资,要求按部门的字符串顺序排序,不能含有human
resource部门,employee结构如下:
employee_id, employee_name,depart_id,depart_name,wage
答:
select depart_name, avg(wage)
from employee where depart_name human resource
group by depart_name order by depart_name
-------------------------------------------------------------------------- 29.
给定如下sql数据库:test(num int(4)) 请用一条sql语句返回
num的最小值,但不许使用统计功能,如min,max等
答:
select top 1 num from test order by num
--------------------------------------------------------------------------
33.一个数据库中有两个表:
一张表为customer,含字段id,name;
一张表为order,含字段id,customerid(连向customer中id的
外键),revenue;
写出求每个customer的revenue总和的sql语句。
建表 create table customer
(id int primary key,name char(10))
go
create table [order]
(id int primary key,customerid int foreign key references
customer(id) , revenue float)
go
--查询
select , sum( isnull([order].revenue,0) )
from customer full join [order]
on( [order].customerid= ) group by
select ,sum(r) from order,customer
where =customerid group by
select , sum(r ) from customer full
join order on( erid= ) group by
5数据库(10)
a tabel called “performance”contain
:name and score,please 用
sql语言表述
如何选出score最high的一个(仅有一个)
仅选出分数,select max(score) from performance
仅选出名字,即选出名字,又选出分数: select top 1
score ,name from per order by score
select name1,score from per where score in/=(select
max(score) from per)
.....
4 有关系 s(sno,sname) c(cno,cname) sc(sno,cno,grade)
1 问上课程 db的学生no
select count(*) from c,sc where =db and =
select count(*) from sc where cno=(select cno from c where
=db)
2 成绩最高的学生号
select sno from sc where grade=(select max(grade) from sc )
3 每科大于90分的人数
select ,count(*) from c,sc where = and
90 group by
select ,count(*) from c join sc on = and
90 group by
数据库笔试题
*
建表:
dept:
deptno(primary key),dname,loc
emp:
empno(primary key),ename,job,mgr,sal,deptno
*/
1 列出emp表中各部门的部门号,最高工资,最低工资
select max(sal) as 最高工资,min(sal) as 最低工资,deptno from
emp group by deptno;
2 列出emp表中各部门job为clerk的员工的最低工资,最高工资
select max(sal) as 最高工资,min(sal) as 最低工资,deptno as 部
门号 from emp where job = clerk group by deptno;
3 对于emp中最低工资小于1000的部门,列出job为clerk的员
工的部门号,最低工资,最高工资
select max(sal) as 最高工资,min(sal) as 最低工资,deptno as 部
门号 from emp as b
where job=clerk and 1000(select min(sal) from emp as a where
=) group by
4 根据部门号由高而低,工资有低而高列出每个员工的姓名,部门
号,工资
select deptno as 部门号,ename as 姓名,sal as 工资 from emp
order by deptno desc,sal asc
5 写出对上题的另一解决方法
(请补充)
6 列出张三所在部门中每个员工的姓名与部门号
select ename,deptno from emp where deptno = (select deptno
from emp where ename = 张三)
7 列出每个员工的姓名,工作,部门号,部门名
select ename,job,, from emp,dept
where =
8 列出emp中工作为clerk的员工的姓名,工作,部门号,部门名
select ename,job,,dname from emp,dept where
9 对于emp中有管理者的员工,列出姓名,管理者姓名(管理者外
键为mgr) select as 姓名, as 管理者 from emp
as a,emp as b where is not null and =
10 对于dept表中,列出所有部门名,部门号,同时列出各部门工
作为clerk的员工名与工作
select dname as 部门名, as 部门号,ename as 员工
名,job as 工作 from dept,emp
where *= and job = clerk
11 对于工资高于本部门平均水平的员工,列出部门号,姓名,工资,
按部门号排序
select as 部门号, as 姓名, as 工资 from
emp as a where (select avg(sal) from emp as b where
=) order by
12 对于emp,列出各个部门中平均工资高于本部门平均水平的员工
数和部门号,按部门号排序
select count() as 员工数, as 部门号 from emp as a
where (select avg(sal) from emp as b where
=) group by order by
13 对于emp中工资高于本部门平均水平,人数多与1人的,列出
部门号,人数,按部门号排序
select count() as 员工数, as 部门号,avg(sal)
as 平均工资 from emp as a
where (select count() from emp as c where
= and (select avg(sal) from emp as b
where =))1 group by order by
14 对于emp中低于自己工资至少5人的员工,列出其部门号,姓
名,工资,以及工资少于自己的人数
select ,,,(select count() from
emp as b where ) as 人数 from emp as a
where (select count() from emp as b where
)5 数据库笔试题及答案
第一套
一.选择题
1. 下面叙述正确的是ccbad ______。
a、算法的执行效率与数据的存储结构无关
b、算法的空间复杂度是指算法程序中指令(或语句)的条数
c、算法的有穷性是指算法必须能在执行有限个步骤之后终止
d、以上三种描述都不对
2. 以下数据结构中不属于线性数据结构的是______。a、队列b、
线性表c、二叉树d、栈
3. 在一棵二叉树上第5层的结点数最多是______。a、8 b、16 c、
32 d、15
4. 下面描述中,符合结构化程序设计风格的是______。
a、使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制
逻辑
b、模块只有一个入口,可以有多个出口
c、注重提高程序的执行效率 d、不使用goto语句
5. 下面概念中,不属于面向对象方法的是______。
a、对象 b、继承 c、类 d、过程调用
6. 在结构化方法中,用数据流程图(dfd)作为描述工具的软件开发阶
段是___ bdbca ___。
a、可行性分析 b、需求分析 c、详细设计 d、程序编码
7. 在软件开发中,下面任务不属于设计阶段的是______。
a、数据结构设计 b、给出系统模块结构 c、定义模块算法 d、定义
需求并建立系统模型
8. 数据库系统的核心是______。
a、数据模型 b、数据库管理系统 c、软件工具 d、数据库
9. 下列叙述中正确的是______。
a、数据库是一个独立的系统,不需要操作系统的支持 b、数据库设
计是指设计数据库管理系统 c、数据库技术的根本目标是要解决数据
共享的问题 d、数据库系统中,数据的物理结构必须与逻辑结构一致
10. 下列模式中,能够给出数据库物理存储结构与物理存取方法的是
______。 a、内模式 b、外模式 c、概念模式 d、逻辑模式 11.
visual foxpro数据库文件是__ dcbaa ____。 a、存放用户数据的
文件 b、管理数据库对象的系统文件
c、存放用户数据和系统的文件 d、前三种说法都对
12. sql语句中修改表结构的命令是______。
a、modify table b、modify structure c、alter table d、alter
structure
13. 如果要创建一个数据组分组报表,第一个分组表达式是部门,第
二个分组表达式是性别,第三个分组表达式是基本工资,当前索引
的索引表达式应当是______。
a、部门+性别+基本工资 b、部门+性别+str(基本工资)
c、str(基本工资)+性别+部门 d、性别+部门+str(基本工资)
14. 把一个项目编译成一个应用程序时,下面的叙述正确的是
______。
a、所有的项目文件将组合为一个单一的应用程序文件
b、所有项目的包含文件将组合为一个单一的应用程序文件
c、所有项目排除的文件将组合为一个单一的应用程序文件
d、由用户选定的项目文件将组合为一个单一的应用程序文件
15. 数据库db、数据库系统dbs、数据库管理系统dbms三者之间
的关系是______。
a、dbs包括db和dbms b、dbms包括db和dbs
c、db包括dbs和dbms d、dbs就是db,也就是dbms
16. 在选项对话框的文件位置选项卡中可以设置_ baaba _____。
a、表单的默认大小 b、默认目录
c、日期和时间的显示格式 d、程序代码的颜色
17. 要控制两个表中数据的完整性和一致性可以设置参照完整性,要
求这两个表______。
a、是同一个数据库中的两个表 b、不同数据库中的两个表
c、两个自由表 d、一个是数据库表另一个是自由表
18. 定位第一条记录上的命令是______。
a、go top b、go bottom c、go 6 d、skip
19. 在关系模型中,实现关系中不允许出现相同的元组的约束是通过
______。
a、候选键 b、主键 c、外键 d、超键
20. 设当前数据库有10条记录(记录未进行任何索引),在下列三种
情况下,当前记录号为1时;eof()为真时;bof()为真时,命令?recn()
的结果分别是______。
a、1,11,1 b、1,10,1 c、1,11,0 d、1,10,0
21. 下列表达式中结果不是日期型的是__ ccbba ____。
a、ctod(2000/10/01) b、{^99/10/01}+365 c、val(2000/10/01)
d、date()
【篇二:sql数据库面试题目及其答案】
答:触发器是一中特殊的存储过程,主要是通过事件来触发而被执
行的。它可以强化约束,来维护数据的完整性和一致性,可以跟踪
数据库内的操作从而不允许未经许可的更新和变化。可以联级运算。
如,某表上的触发器上包含对另一个表的数据操作,而该操作又会
导致该表触发器被触发。
2.什么是存储过程?用什么来调用?
答:存储过程是一个预编译的sql语句,优点是允许模块化的设计,
就是说只需创建一次,以后在该程序中就可以调用多次。如果某次
操作需要执行多次sql,使用存储过程比单纯sql语句执行要快。可
以用一个命令对象来调用存储过程。
3.索引的作用?和它的优点缺点是什么?
答:索引就一种特殊的查询表,数据库的搜索引擎可以利用它加速
对数据的检索。它很类似与现实生活中书的目录,不需要查询整本
书内容就可以找到想要的数据。索引可以是唯一的,创建索引允许
指定单个列或者是多个列。缺点是它减慢了数据录入的速度,同时
也增加了数据库的尺寸大小。
3。什么是内存泄漏?
答:一般我们所说的内存泄漏指的是堆内存的泄漏。堆内存是程序
从堆中为其分配的,大小任意的,使用完后要显示释放内存。当应
用程序用关键字new等创建对象时,就从堆中为它分配一块内存,
使用完后程序调用free或者delete释放该内存,否则就说该内存就
不能被使用,我们就说该内存被泄漏了。
4.维护数据库的完整性和一致性,你喜欢用触发器还是自写业务
逻辑?为什么?
答:我是这样做的,尽可能使用约束,如check,主键,外键,非空
字段等来约束,这样做效率最高,也最方便。其次是使用触发器,
这种方法可以保证,无论什么业务系统访问数据库都可以保证数据
的完整新和一致性。最后考虑的是自写业务逻辑,但这样做麻烦,
编程复杂,效率低下。
5.什么是事务?什么是锁?
答:事务就是被绑定在一起作为一个逻辑工作单元的sql语句分组,
如果任何一个语句操作失败那么整个操作就被失败,以后操作就会
回滚到操作前状态,或者是上有个节点。为了确保要么执行,要么
不执行,就可以使用事务。要将有组语句作为事务考虑,就需要通
过acid测试,即原子性,一致性,隔离性和持久性。
锁:在所以的dbms中,锁是实现事务的关键,锁可以保证事务的
完整性和并发性。与现实生活中锁一样,它可以使某些数据的拥有
者,在某段时间内不能使用某些数据或数据结构。当然锁还分级别
的。
6.什么叫视图?游标是什么?
答:视图是一种虚拟的表,具有和物理表相同的功能。可以对视图
进行增,改,查,操作,试图通常是有一个表或者多个表的行或列
的子集。对视图的修改不影响基本表。它使得我们获取数据更容易,
相比多表查询。
游标:是对查询出来的结果集作为一个单元来有效的处理。游标可
以定在该单元中的特定行,从结果集的当前行检索一行或多行。可
以对结果集当前行做修改。一般不使用游标,但是需要逐条处理数
据的时候,游标显得十分重要。
7.为管理业务培训信息,建立3个表:
s(s#,sn,sd,sa)s#,sn,sd,sa分别代表学号,学员姓名,所属单位,
学员年龄
c(c#,cn)c#,cn分别代表课程编号,课程名称
版权声明:本文标题:数据库sql面试题及答案 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1713356981a630678.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论