多套数据库笔试题及答案
数据库笔试题及答案I
第一套
选择题
1.下面叙述正确的是______。
A、算法的执行效率与数据的存储结构无关
B、算法的空间复杂度是指算法程序中指令(或语句)的条数
C、算法的有穷性是指算法必须能在执行有限个步骤之后终止
D、以上三种描述都不对
2.以下数据结构中不属于线性数据结构的是______。
A、队列B、线性表C、二叉树D、栈
3.在一棵二叉树上第5层的结点数最多是______。
4.A、8B、16C、32D、15下面描述中,符合结构化程序设计风格的是______。
A、使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑
B、模块只有一个入口,可以有多个出口
C、注重提高程序的执行效率D、不使用goto语句
下面概念中,不属于面向对象方法的是______。
A、对象B、继承C、类D、过程调用
在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是______。
A、可行性分析B、需求分析C、详细设计D、程序编码
在软件开发中,下面任务不属于设计阶段的是______。
A、数据结构设计B、给出系统模块结构C、定义模块算法
D、定义需求并建立系统模型
数据库系统的核心是______。
A、数据模型B、数据库管理系统C、软件工具D、数据库
下列叙述中正确的是______。
A、数据库是一个独立的系统,不需要操作系统的支持
B、数据库设计是指设计数据库管理系统
C、数据库技术的根本目标是要解决数据共享的问题
D、数据库系统中,数据的物理结构必须与逻辑结构一致5.6.7.8.9.
10.下列模式中,能够给出数据库物理存储结构与物理存取方法的是______。
A、内模式B、外模式C、概念模式D、逻辑模式
11.VisualFoxPro数据库文件是______。
A、存放用户数据的文件B、管理数据库对象的系统文件
C、存放用户数据和系统的文件D、前三种说法都对
12.SQL语句中修改表结构的命令是______。
A、MODIFYTABLEB、MODIFYSTRUCTUREC、ALTERTABLE
D、ALTERSTRUCTURE
13.如果要创建一个数据组分组报表,第一个分组表达式是"部门",第二个分组表达式是"性别",第三个分组表达式是"基本工资",当前索引的索引表达式应当是______。
A、部门+性别+基本工资B、部门+性别+STR(基本工资)
C、STR(基本工资)+性别+部门D、性别+部门+STR(基本工资)
多套数据库笔试题及答案
14.把一个项目编译成一个应用程序时,下面的叙述正确的是______。
A、所有的项目文件将组合为一个单一的应用程序文件
B、所有项目的包含文件将组合为一个单一的应用程序文件
C、所有项目排除的文件将组合为一个单一的应用程序文件
D、由用户选定的项目文件将组合为一个单一的应用程序文件
15.数据库DB、数据库系统DBS、数据库管理系统DBMS三者之间的关系是______。
A、DBS包括DB和DBMSB、DBMS包括DB和DBS
C、DB包括DBS和DBMSD、DBS就是DB,也就是DBMS
16.在"选项"对话框的"文件位置"选项卡中可以设置______。
A、表单的默认大小B、默认目录
C、日期和时间的显示格式D、程序代码的颜色
17.要控制两个表中数据的完整性和一致性可以设置"参照完整性",要求这两个表______。
A、是同一个数据库中的两个表B、不同数据库中的两个表
C、两个自由表D、一个是数据库表另一个是自由表
18.定位第一条记录上的命令是______。
A、GOTOPB、GOBOTTOMC、GO6D、SKIP
19.在关系模型中,实现"关系中不允许出现相同的元组"的约束是通过______。
A、候选键B、主键C、外键D、超键
20.设当前数据库有10条记录(记录未进行任何索引),在下列三种情况下,当前记录号为1时;EOF()为真时;BOF()为真时,命令?RECN()的结果分别是______。
A、1,11,1B、1,10,1C、1,11,0D、1,10,0
21.下列表达式中结果不是日期型的是______。
A、CTOD("2000/10/01")B、{^99/10/01}+365C、VAL("2000/10/01")D、DATE()
22.只有满足联接条件的记录才包含在查询结果中,这种联接为______。
A、左联接B、右联接C、内部联接D、完全联接
23.索引字段值不唯一,应该选择的索引类型为______。
A、主索引B、普通索引C、候选索引D、唯一索引
24.执行SELECT0选择工作区的结果是______。
A、选择了0号工作区B、选择了空闲的最小号工作区
C、关闭选择的工作区D、选择已打开的工作区
25.从数据库中删除表的命令是______。
A、DROPTABLEB、ALTERTABLEC、DELETETABLED、USE
26.DELETEFROMSWHERE年龄>60语句的功能是______。
A、从S表中彻底删除年龄大于60岁的记录
B、S表中年龄大于60岁的记录被加上删除标记
C、删除S表D、删除S表的年龄列
27.SELECT-SQL语句是______。
A、选择工作区语句B、数据查询语句C、选择标准语句D、数据修改语句
28.SQL语言是______语言。
A、层次数据库B、网络数据库C、关系数据库D、非数据库
29.在SQL中,删除视图用______。
A、DROPSCHEMA命令B、CREATETABLE命令
C、DROPVIEW命令D、DROPINDEX命令
多套数据库笔试题及答案
30.以下属于非容器类控件的是______。
A、FormB、LabelC、pageD、Container
31.将查询结果放在数组中应使用______短语。
A、INTOCURSORB、TOARRAYC、INTOTABLED、INTOARRAY
32.在命令窗口执行SQL命令时,若命令要占用多行,续行符是______。
A、冒号(:)B、分号(;)C、逗号(,)D、连字符(-)
33.设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
借阅(借书证号C(4),总编号C(6),借书日期D(8))
对于图书管理数据库,查询0001号借书证的读者姓名和所借图书的书名。SQL语句正确的是______。
SELECT姓名,书名FROM借阅,图书,读者WHERE;借阅.借书证号="0001"AND;______
______
A、图书.总编号=借阅.总编号AND;读者.借书证号=借阅.借书证号
B、图书.分类号=借阅.分类号AND;读者.借书证号=借阅.借书证号
C、读者.总编号=借阅.总编号AND;读者.借书证号=借阅.借书证号
D、图书.总编号=借阅.总编号AND;
34.设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
借阅(借书证号C(4),总编号C(6),借书日期D(8))
对于图书管理数据库,分别求出各个单位当前借阅图书的读者人次。下面的SQL语句正确的是______。
SELECT单位,______FROM借阅,读者WHERE;借阅.借书证号=读者.借书证号______
A、COUNT(借阅.借书证号)GROUPBY单位
B、SUM(借阅.借书证号)GROUPBY单位
C、COUNT(借阅.借书证号)ORDERBY单位
D、COUNT(借阅.借书证号)HAVING单位
35.设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
借阅(借书证号C(4),总编号C(6),借书日期D(8))
对于图书管理数据库,检索借阅了《现代网络技术基础》一书的借书证号。下面SQL语句正确的是______。
SELECT借书证号FROM借阅WHERE总编号=;______
A、(SELECT借书证号FROM图书WHERE书名="现代网络技术基础")
B、(SELECT总编号FROM图书WHERE书名="现代网络技术基础")
C、(SELECT借书证号FROM借阅WHERE书名="现代网络技术基础")
D、(SELECT总编号FROM借阅WHERE书名="现代网络技术基础")
多套数据库笔试题及答案
填空题
36.算法的复杂度主要包括______复杂度和空间复杂度。
37.数据的逻辑结构在计算机存储空间中的存放形式称为数据的______。
38.若按功能划分,软件测试的方法通常分为白盒测试方法和______测试方法。
39.如果一个工人可管理多个设施,而一个设施只被一个工人管理,则实体"工人"与实体"设备"之间存在______联系。
40.关系数据库管理系统能实现的专门关系运算包括选择、连接和______。
41.命令?LEN("THISISMYBOOK")的结果是______。
42.SQLSELECT语句为了将查询结果存放到临时表中应该使用______短语。
43.多栏报表的栏目数可以通过______来设置。
44.在打开项目管理器之后再打开"应用程序生成器",可以通过按ALT+F2键,快捷菜单和"工具"菜单中的______。
45.数据库系统的核心是______。
46.查询设计器中的"联接"选项卡,可以控制______选择。
47.设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
借阅(借书证号C(4),总编号C(6),借书日期D(8))
用SQL的CREATE命令建立借阅表(字段顺序要相同),请对下面的SQL语句填空:
______
48.设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
借阅(借书证号C(4),总编号C(6),借书日期D(8))
对图书管理数据库,查询由"清华大学出版社"或"电子工业出版社"出版,并且单价不超出20元的书名。请对下面的SQL语句填空:
SELECT书名,出版单位,单价FROM图书;
WHERE_______
AND;_______
49.设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
借阅(借书证号C(4),总编号C(6),借书日期D(8))
对图书管理数据库,求共借出多少种图书。请对下面的SQL语句填空:
SELECT_______FROM借阅
选择题答案
1-5CCBAD6-10BDBCA11-15DCBAA16-20BAABA21-25CCBBA26-30BBCCB31-35DDAAB
多套数据库笔试题及答案
填空题答案
36.时间37.模式或逻辑模式38.黑盒
39.一对多或1对多或一对n或1:N或1:n或1:n或1:N或一对m或1:M或1:m或1:m或1:N
40.投影41.1542.Intocursor或Intocursorcursorname
43.页面设置或列数44.应用程序生成器
45.数据库管理系统或DBMS
46.联接类型或联接条件
47.CREATETABLE借阅(借书证号C(4),总编号C(6),借书日期D(8))或CREATABL借阅(借书证号C(4),总编号C(6),借书日期D(8))或CREATETABLE借阅(借书证号C(4),总编号C(6),借书日期D)或CREATABL借阅(借书证号C(4),总编号C(6),借书日期D)
48.单价<=20或(出版单位="清华大学出版社"OR出版单位="电子工业出版社")或(出版单位="电子工业出版社"OR出版单位="清华大学出版社")或(出版单位='清华大学出版社'OR出版单位='电子工业出版社')与(出版单位="清华大学出版社"OR出版单位="电子工业出版社")或(出版单位='清华大学出版社‘)
49.COUNT(DISTINCT总编号)或COUN(DISTINCT总编号)或COUNT(DIST总编号)或COUN(DIST总编号)
第二套题
选择题
1.以下数据结构中不属于线性数据结构的是______。
A、队列B、线性表C、二叉树D、栈
2.在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是______。
A、可行性分析B、需求分析C、详细设计D、程序编码
3.结构化程序设计主要强调的是______。
A、程序的规模B、程序的易读性C、程序的执行效率D、程序的可移植性
4.在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是______。
A、概要设计B、详细设计C、可行性分析D、需求分析
5.下列关于栈的叙述中正确的是______。
A、在栈中只能插入数据B、在栈中只能删除数据
C、栈是先进先出的线性表D、栈是先进后出的线性表
6.下面不属于软件设计原则的是______。
A、抽象B、模块化C、自底向上D、信息隐蔽
7.对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为______。
A、N+1B、NC、(N+1)/2D、N/2
8.视图设计一般有3种设计次序,下列不属于视图设计的是______。
A、自顶向下B、由外向内C、由内向外D、自底向上
9.下列有关数据库的描述,正确的是______。
A、数据库是一个DBF文件B、数据库是一个关系
C、数据库是一个结构化的数据集合D、数据库是一组文件
多套数据库笔试题及答案
10.下列说法中,不属于数据模型所描述的内容的是______。
A、数据结构B、数据操作C、数据查询D、数据约束
11.在下面的VisualFoxPro表达式中,运算结果是逻辑真的是______。
A、EMPTY(.NULL.)B、LIKE('acd','ac?')C、AT('a','123abc')D、EMPTY(SPACE(2))
12.表达式VAL(SUBS("奔腾586",5,1))*Len("visualfoxpro")的结果是______。
A、13.00B、14.00C、45.00D、65.00
13.以下关于自由表的叙述,正确的是______。
A、全部是用以前版本的FOXPRO(FOXBASE)建立的表
B、可以用VisualFoxPro建立,但是不能把它添加到数据库中
C、自由表可以添加到数据库中,数据库表也可以从数据库中移出成为自由表
D、自由表可以添加到数据库中,但数据库表不可从数据库中移出成为自由表
14.下面关于数据环境和数据环境中两个表之间的关系的陈述中,______是正确的。
A、数据环境是对象,关系不是对象B、数据环境不是对象,关系是对象
C、数据环境是对象,关系是数据环境中的对象D、数据环境和关系均不是对象
15.在"报表设计器"中,可以使用的控件是______。
A、标签、域控件和线条B、标签、域控件和列表框
C、标签、文本框和列表框D、布局和数据源
16.用二维表数据来表示实体及实体之间联系的数据模型称为______。
A、实体--联系模型B、层次模型C、网状模型D、关系模型
17.用来指明复选框的当前选中状态的属性是______。
A、SelectedB、CaptionC、ValueD、ControlSource
18.使用菜单操作方法打开一个在当前目录下已经存在的查询文件zgjk.qpr后,在命令窗口生成的命令是____。
A、OPENQUERYzgjk.qprB、MODIFYQUERYzgjk.qpr
C、DOQUERYzgjk.qprD、CREATEQUERYzgjk.qpr
19.可以伴随着表的打开而自动打开的索引是______。
A、单一索引文件(IDX)B、复合索引文件(CDX)
C、结构化复合索引文件D、非结构化复合索引文件
20.在数据库设计器中,建立两个表之间的一对多联系是通过以下索引实现的______。
A、"一方"表的主索引或候选索引,"多方"表的普通索引
B、"一方"表的主索引,"多方"表的普通索引或候选索引
C、"一方"表的普通索引,"多方"表的主索引或候选索引
D、"一方"表的普通索引,"多方"表的候选索引或普通索引
下列函数中函数值为字符型的是______。
A、DATE()B、TIME()C、YEAR()D、DATETIME()
下面对控件的描述正确的是______。
A、用户可以在组合框中进行多重选择B、用户可以在列表框中进行多重选择
C、用户可以在一个选项组中选中多个选项按钮
D、用户对一个表单内的一组复选框只能选中其中一个
确定列表框内的某个条目是否被选定应使用的属性是______。
A、ValueB、ColumnCountC、ListCountD、Selected
设有关系R1和R2,经过关系运算得到结果S,则S是______。
A、一个关系B、一个表单C、一个数据库D、一个数组
21.22.23.24.
多套数据库笔试题及答案
25.DBAS指的是______。
A、数据库管理系统B、数据库系统C、数据库应用系统D、数据库服务系统
26.设X="ABC",Y="ABCD",则下列表达式中值为.T.的是______。
A、X=YB、X==YC、X$YD、AT(X,Y)=0
27.在表结构中,逻辑型、日期型、备注型字段的宽度分别固定为______。
A、3,8,10B、1,6,4C、1,8,任意D、1,8,4
28.在标准SQL中,建立视图的命令是______。
A、CREATESCHEMA命令B、CREATETABLE命令
C、CREATEVIEW命令D、CREATEINDEX命令
29.有关SCAN循环结构,叙述正确的是______。
A、SCAN循环结构中的LOOP语句,可将程序流程直接指向循环开始语句SCAN,首先判断EOF()函数的真假
B、在使用SCAN循环结构时,必须打开某一个数据库
C、SCAN循环结构的循环体中必须写有SKIP语句
D、SCAN循环结构,如果省略了子句\FOR和WHILE条件子句,则直接退出循环
30.设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
借阅(借书证号C(4),总编号C(6),借书日期D(8))
对于图书管理数据库,要查询所藏图书中,各个出版社的图书最高单价、平均单价和册数,下面SQL语句正确的是______。
SELECT出版单位,______,______,______;
FROM图书管理!图书______出版单位
A、MIN(单价)AVGAGE(单价)COUNT(*)GROUPBY
B、MAX(单价)AVG(单价)COUNT(*)ORDERBY
C、MAX(单价)AVG(单价)SUM(*)ORDERBY
D、MAX(单价)AVG(单价)COUNT(*)GROUPBY
31.设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
借阅(借书证号C(4),总编号C(6),借书日期D(8))
对于图书管理数据库,求CIE单位借阅图书的读者的人数。
下面SQL语句正确的是______。
SELECT______FROM借阅WHERE;
借书证号_______
A、COUNT(DISTINCT借书证号)
IN(SELECT借书证号FROM读者WHERE单位="CIE")
B、COUNT(DISTINCT借书证号)
IN(SELECT借书证号FROM借阅WHERE单位="CIE")
C、SUM(DISTINCT借书证号)
IN(SELECT借书证号FROM读者WHERE单位="CIE")
D、SUM(DISTINCT借书证号)
IN(SELECT借书证号FOR借阅WHERE单位="CIE")
多套数据库笔试题及答案
32.查询订购单号(字符型,长度为4)尾字符是"1"的错误命令是______。
A、SELECT*FROM订单WHERESUBSTR(订购单号,4)="1"
B、SELECT*FROM订单WHERESUBSTR(订购单号,4,1)="1"
C、SELECT*FROM订单WHERE"1"$订购单号
D、SELECT*FROM订单WHERERIGHT(订购单号,1)="1"
33.在关系模型中,为了实现"关系中不允许出现相同元组"的约束应使用______。
A、临时关键字B、主关键字C、外部关键字D、索引关键字
34.根据"职工"项目文件生成emp_sys.exe应用程序的命令是______。
A、BUILDEXEemp_sysFROM职工B、BUILDAPPemp_sys.exeFROM职工
C、LIKEEXEemp_sysFROM职工D、LIKEAPPemp_sys.exeFROM职工
35.当前盘当前目录下有数据库:学院.dbc,其中有"教师"表和"学院"表。
"教师"表:
"学院"表:
有SQL语句:
SELECTDISTINCT系号FROM教师WHERE工资>=;
ALL(SELECT工资FROM教师WHERE系号="02")
与如上语句等价的SQL语句是______。
A、SELECTDISTINCT系号FROM教师WHERE工资>=;
(SELECTMAX(工资)FROM教师WHERE系号="02")
B、SELECTDISTINCT系号FROM教师WHERE工资>=;
(SELECTMIN(工资)FROM教师WHERE系号="02")
C、SELECTDISTINCT系号FROM教师WHERE工资>=;
ANY(SELECT工资FROM教师WHERE系号="02")
D、SELECTDISTINCT系号FROM教师WHERE工资>=;
SOME(SELECT工资FROM教师WHERE系号="02")
填空题
36.
37.
38.
39.
40.若按功能划分,软件测试的方法通常分为白盒测试方法和______测试方法。数据库系统的三级模式分别为______模式、内部级模式与外部级模式。在最坏情况下,冒泡排序的时间复杂度为______。在面向对象方法中,信息隐蔽是通过对象的______性来实现的。关系模型的数据操纵即是建立在关系上的数据操纵,一般有______、增加、删除和修改四种操作。
41.要把帮助文件设置为复制到硬盘上的Foxhelp.chm文件,需要在"选项"对话框的______选项卡上设置。
42.TIME()的返回值的数据类型是______类型。
43.在定义字段有效性规则中,在规则框中输入的表达式中类型是________。
44.设计报表通常包括两部分内容:______和布局。
45.______是指只有满足联接条件的记录才包含在查询结果中。
46.设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
借阅(借书证号C(4),总编号C(6),借书日期D(8))
检索书价在15元至25元(含15元和25元)之间的图书的书名、作者、书价和分
多套数据库笔试题及答案
类号,结果按分类号升序排序。
SELECT书名,作者,单价,分类号FROM图书;
WHERE______;
ORDERBY______;
47.设有如下关系表R、S和T:
R(BH,XM,XB,DWH)
S(SWH,DWM)
T(BH,XM,XB,DWH)
实现R∪T的SQL语句是_______。
48.设有如下关系表R:
R(NO,NAME,SEX,AGE,CLASS)
主关键字是NO
其中NO为学号,NAME为姓名,SEX为性别,AGE为年龄,CLASS为班号。写出实现下列功能的SQL语句。
插入"95031"班学号为30,姓名为"郑和"的学生记录;_______。
49.设有如下关系表R:
R(NO,NAME,SEX,AGE,CLASS)
主关键字是NO
其中NO为学号(数值型),NAME为姓名,SEX为性别,AGE为年龄,CLASS为班号。写出实现下列功能的SQL语句。
删除学号为20的学生记录;______。
选择题答案
1-5CBBDD6-10CBBCC11-15DDCCA16-20DCBCA21-25BBDAC26-30CDCBD31-35ACBBA
填空题答案
36.黑盒37.概念或概念级38.n(n-1)/239.封装40.查询41.文件位置42.字符或C43.逻辑表达式
44.数据源45.内部联接
46.单价BETWEEN15AND25或单价BETW15AND25或单价BETWE15AND25或单价>=15and单价<=25或单价>=15and单价=<25或单价=>15and单价<=25或单价=>15and单价=<25与分类号ASC或分类号
47.SELECT*FROMRUNIONSELECT*FROMT或SELE*FROMRUNIOSELE*FROMT或SELECT*FROMRUNIOSELECT*FROMT或SELE*FROMRUNIONSELE*FROMT
48.INSERTINTOR(NO,NAME,CLASS)VALUES(30,"郑和","95031")或INSEINTOR(NO,NAME,CLASS)VALUES(30,"郑和","95031")
49.DELETEFROMRWHERENO=20或DELEFROMRWHERENO=20或DELEFROMRWHERNO=20或DELETEFROMRWHERNO=20
多套数据库笔试题及答案
SQL经典面试题及答案
1.一道SQL语句面试题,关于groupby表内容:
2005-05-09胜
2005-05-09胜
2005-05-09负
2005-05-09负
2005-05-10胜
2005-05-10负
2005-05-10负
如果要生成下列结果,该如何写sql语句?
胜负
2005-05-0922
2005-05-1012
------------------------------------------
createtable#tmp(rqvarchar(10),shengfunchar(1))
insertinto#tmpvalues('2005-05-09','胜')
insertinto#tmpvalues('2005-05-09','胜')
insertinto#tmpvalues('2005-05-09','负')
insertinto#tmpvalues('2005-05-09','负')
insertinto#tmpvalues('2005-05-10','胜')
insertinto#tmpvalues('2005-05-10','负')
insertinto#tmpvalues('2005-05-10','负')
1)selectrq,sum(casewhenshengfu='胜'then1else0end)'胜',sum(casewhenshengfu='负'then1else0end)'负'from#tmpgroupbyrq
2)selectN.rq,N.勝,M.負from(
selectrq,勝=count(*)from#tmpwhereshengfu='胜'groupbyrq)Ninnerjoin
(selectrq,負=count(*)from#tmpwhereshengfu='负'groupbyrq)MonN.rq=M.rq
3)selecta.col001,a.a1胜,b.b1负from
(selectcol001,count(col001)a1fromtemp1wherecol002='胜'groupbycol001)a,(selectcol001,count(col001)b1fromtemp1wherecol002='负'groupbycol001)bwherea.col001=b.col001
2.请教一个面试中遇到的SQL语句的查询问题
表中有ABC三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列。
------------------------------------------
select(casewhena>bthenaelsebend),
(casewhenb>cthenbeslecend)
fromtable_name
多套数据库笔试题及答案
3.面试题:一个日期判断的sql语句?
请取出tb_send表中日期(SendTime字段)为当天的所有记录?(SendTime字段为datetime型,包含日期与时间)
------------------------------------------
select*fromtbwheredatediff(dd,SendTime,getdate())=0
4.有一张表,里面有3个字段:语文,数学,英语。其中有3条记录分别表示语文70分,数学80分,英语58分,请用一条sql语句查询出这三条记录并按以下条件显示出来(并写出您的思路):
大于或等于80表示优秀,大于或等于60表示及格,小于60分表示不及格。
显示格式:
语文数学英语
及格优秀不及格
------------------------------------------
select
(casewhen语文>=80then'优秀'
when语文>=60then'及格'
else'不及格')as语文,
(casewhen数学>=80then'优秀'
when数学>=60then'及格'
else'不及格')as数学,
(casewhen英语>=80then'优秀'
when英语>=60then'及格'
else'不及格')as英语,
fromtable
5.在sqlserver2000中请用sql创建一张用户临时表和系统临时表,里面包含两个字段ID和IDValues,类型都是int型,并解释下两者的区别?
------------------------------------------
用户临时表:createtable#xx(IDint,IDValuesint)
系统临时表:createtable##xx(IDint,IDValuesint)
区别:
用户临时表只对创建这个表的用户的Session可见,对其他进程是不可见的.
当创建它的进程消失时这个临时表就自动删除.
全局临时表对整个SQLServer实例都可见,但是所有访问它的Session都消失的时候,它也自动删除.
6.sqlserver2000是一种大型数据库,他的存储容量只受存储介质的限制,请问它是通过什么方式实现这种无限容量机制的。
------------------------------------------
它的所有数据都存储在数据文件中(*.dbf),所以只要文件够大,SQLServer的存储容量是可以扩大的.
SQLServer2000数据库有三种类型的文件:
主要数据文件
多套数据库笔试题及答案
主要数据文件是数据库的起点,指向数据库中文件的其它部分。每个数据库都有一个主要数据文件。主要数据文件的推荐文件扩展名是.mdf。
次要数据文件
次要数据文件包含除主要数据文件外的所有数据文件。有些数据库可能没有次要数据文件,而有些数据库则有多个次要数据文件。次要数据文件的推荐文件扩展名是.ndf。日志文件
日志文件包含恢复数据库所需的所有日志信息。每个数据库必须至少有一个日志文件,但可以不止一个。日志文件的推荐文件扩展名是.ldf。
7.请用一个sql语句得出结果
从table1,table2中取出如table3所列格式数据,注意提供的数据及结果不准确,只是作为一个格式向大家请教。
如使用存储过程也可以。
table1
月份mon部门dep业绩yj
-------------------------------
一月份0110
一月份0210
一月份035
二月份028
二月份049
三月份038
table2
部门dep部门名称dname
--------------------------------
01国内业务一部
02国内业务二部
03
04国内业务三部国际业务部
table3(result)
部门dep一月份二月份
--------------------------------------
0110null
02108
03null5
04nullnull
------------------------------------------三月份nullnull89
多套数据库笔试题及答案
1)
selecta.部门名称dname,b.业绩yjas'一月份',c.业绩yjas'二月份',d.业绩yjas'三月份'fromtable1a,table2b,table2c,table2d
wherea.部门dep=b.部门depandb.月份mon='一月份'and
a.部门dep=c.部门depandc.月份mon='二月份'and
a.部门dep=d.部门depandd.月份mon='三月份'and
2)
selecta.dep,
sum(casewhenb.mon=1thenb.yjelse0end)as'一月份',
sum(casewhenb.mon=2thenb.yjelse0end)as'二月份',
sum(casewhenb.mon=3thenb.yjelse0end)as'三月份',
sum(casewhenb.mon=4thenb.yjelse0end)as'四月份',
sum(casewhenb.mon=5thenb.yjelse0end)as'五月份',
sum(casewhenb.mon=6thenb.yjelse0end)as'六月份',
sum(casewhenb.mon=7thenb.yjelse0end)as'七月份',
sum(casewhenb.mon=8thenb.yjelse0end)as'八月份',
sum(casewhenb.mon=9thenb.yjelse0end)as'九月份',
sum(casewhenb.mon=10thenb.yjelse0end)as'十月份',
sum(casewhenb.mon=11thenb.yjelse0end)as'十一月份',
sum(casewhenb.mon=12thenb.yjelse0end)as'十二月份',
fromtable2aleftjointable1bona.dep=b.dep
8.华为一道面试题
一个表中的Id有多个记录,把所有这个id的记录查出来,并显示共有多少条记录数。------------------------------------------
selectid,Count(*)fromtbgroupbyidhavingcount(*)>1
select*from(selectcount(ID)ascountfromtablegroupbyID)TwhereT.count>1Sql常见面试题
1.用一条SQL语句查询出每门课都大于80分的学生姓名
namekechengfenshu
张三语文
张三数学
李四语文
李四数学
王五语文
王五数学
王五英语
A:selectdistinctname
wherefenshu<=80)
2.学生表如下:
自动编号学号817576908110090fromtablewherenamenotin(selectdistinctnamefromtable姓名课程编号课程名称分数
多套数据库笔试题及答案
12005001张三0001数学69
22005002李四0001数学89
32005001张三0001数学69
删除除了自动编号不同,其他都相同的学生冗余信息
A:deletetablenamewhere自动编号notin(selectmin(自动编号)fromtablenamegroupby学号,姓名,课程编号,课程名称,分数)
一个叫department的表,里面只有一个字段name,一共有4条纪录,分别是a,b,c,d,对应四个球对,现在四个球对进行比赛,用一条sql语句显示所有可能的比赛组合.你先按你自己的想法做一下,看结果有我的这个简单吗?
答:http://www.77cn.com.cn,http://www.77cn.com.cn
fromteama,teamb
http://www.77cn.com.cn<http://www.77cn.com.cn
请用SQL语句实现:从TestDB数据表中查询出所有月份的发生额都比101科目相应月份的发生额高的科目。请注意:TestDB中有很多科目,都有1-12月份的发生额。AccID:科目代码,Occmonth:发生额月份,DebitOccur:发生额。
数据库名:JcyAudit,数据集:Select*fromTestDB
答:selecta.*
fromTestDBa
,(selectOccmonth,max(DebitOccur)Debit101ccurfromTestDBwhereAccID='101'groupbyOccmonth)b
wherea.Occmonth=b.Occmonthanda.DebitOccur>b.Debit101ccur
**************************
面试题:怎么把这样一个表儿
yearmonthamount
199111.1
199121.2
199131.3
199141.4
199212.1
199222.2
199232.3
199242.4
查成这样一个结果
yearm1m2m3m4
19911.11.21.31.4
19922.12.22.32.4
答案一、
selectyear,
(selectamountfrom
(selectamountfrom
(selectamountfromaaamwheremonth=1aaamwheremonth=2aaamwheremonth=3andm.year=aaa.year)asm1,andm.year=aaa.year)asm2,andm.year=aaa.year)asm3,
多套数据库笔试题及答案
(selectamountfromaaamwheremonth=4
fromaaagroupbyyear
这个是ORACLE中做的:andm.year=aaa.year)asm4
select*from(selectname,yearb1,lead(year)over
(partitionbynameorderbyyear)b2,lead(m,2)over(partitionbynameorderbyyear)b3,rank()over(
partitionbynameorderbyyear)rkfromt)whererk=1;
**********************
精妙的SQL语句!
精妙SQL语句
作者:不详发文时间:2003.05.2910:55:05
说明:复制表(只复制结构,源表名:a新表名:b)
SQL:select*intobfromawhere1<>1
说明:拷贝表(拷贝数据,源表名:a目标表名:b)
SQL:insertintob(a,b,c)selectd,e,ffromb;
说明:显示文章、提交人和最后回复时间
SQL:selecta.title,http://www.77cn.com.cnername,b.adddatefromtablea,(selectmax(adddate)adddatefromtablewheretable.title=a.title)b
说明:外连接查询(表名1:a表名2:b)
SQL:selecta.a,a.b,a.c,b.c,b.d,b.ffromaLEFTOUTJOINbONa.a=b.c
说明:日程安排提前五分钟提醒
SQL:select*from日程安排wheredatediff('minute',f开始时间,getdate())>5
说明:两张关联表,删除主表中已经在副表中没有的信息
SQL:
deletefrominfowherenotexists(select*frominfobzwhereinfo.infid=infobz.infid)说明:--
SQL:
SELECTA.NUM,http://www.77cn.com.cn,B.UPD_DATE,B.PREV_UPD_DATE
FROMTABLE1,
(SELECTX.NUM,X.UPD_DATE,Y.UPD_DATEPREV_UPD_DATE
FROM(SELECTNUM,UPD_DATE,INBOUND_QTY,STOCK_ONHAND
FROMTABLE2
WHERETO_CHAR(UPD_DATE,'YYYY/MM')=TO_CHAR(SYSDATE,'YYYY/MM'))X,
(SELECTNUM,UPD_DATE,STOCK_ONHAND
FROMTABLE2
WHERETO_CHAR(UPD_DATE,'YYYY/MM')=
TO_CHAR(TO_DATE(TO_CHAR(SYSDATE,'YYYY/MM')¦¦'/01','YYYY/MM/DD')-1,'YYYY/MM'))Y,
WHEREX.NUM=Y.NUM(+)
ANDX.INBOUND_QTY+NVL(Y.STOCK_ONHAND,0)<>X.STOCK_ONHAND)BWHEREA.NUM=B.NUM
说明:--
多套数据库笔试题及答案
SQL:
select*fromstudentinfowherenotexists(select*fromstudentwherestudentinfo.id=student.id)and系名称='"&strdepartmentname&"'and专业名称='"&strprofessionname&"'orderby性别,生源地,高考总成绩
说明:
从数据库中去一年的各单位电话费统计(电话费定额贺电化肥清单两个表来源)SQL:
http://www.77cn.com.cnerper,a.tel,a.standfee,TO_CHAR(a.telfeedate,'yyyy')AStelyear,SUM(decode(TO_CHAR(a.telfeedate,'mm'),'01',a.factration))ASJAN,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'02',a.factration))ASFRI,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'03',a.factration))ASMAR,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'04',a.factration))ASAPR,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'05',a.factration))ASMAY,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'06',a.factration))ASJUE,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'07',a.factration))ASJUL,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'08',a.factration))ASAGU,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'09',a.factration))ASSEP,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'10',a.factration))ASOCT,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'11',a.factration))ASNOV,
SUM(decode(TO_CHAR(a.telfeedate,'mm'),'12',a.factration))ASDEC
FROM(http://www.77cn.com.cnerper,a.tel,a.standfee,b.telfeedate,b.factration
FROMTELFEESTANDa,TELFEEb
WHEREa.tel=b.telfax)a
http://www.77cn.com.cnerper,a.tel,a.standfee,TO_CHAR(a.telfeedate,'yyyy')
说明:四表联查问题:
SQL:select*fromaleftinnerjoinbona.a=b.brightinnerjoincona.a=c.cinnerjoindona.a=d.dwhere.....
说明:得到表中最小的未使用的ID号
SQL:
SELECT(CASEWHENEXISTS(SELECT*FROMHandlebWHEREb.HandleID=1)THENMIN(HandleID)+1ELSE1END)asHandleID
FROMHandle
WHERENOTHandleIDIN(SELECTa.HandleID-1FROMHandlea)
***********************
有两个表A和B,均有key和value两个字段,如果B的key在A中也有,就把B的value换为A中对应的value
这道题的SQL语句怎么写?
updatebsetb.value=(selecta.valuefromawherea.key=b.key)whereb.idin(selectb.idfromb,awhereb.key=a.key);
************************
高级sql面试题
原表:
courseidcoursenamescore
-------------------------------------