一、     选择题

1、SQL语言是( C )语言。

A.层次数据库 B.网络数据库 C.关系数据库 D.非数据库     redis 是

3、如果在where子句中有两个条件要同时满足,应该用哪个逻辑符来连接(C )

A.OR

B.NOT

C.AND

D.NONE

4、外连接的条件可以放在以下的那一个子句中(  B)

A.  FROM

B.   WEHRE

C.   SELECT

D.   HAVING  group by分组后必须用  聚合函数只能在having中用

5、在从两个表中查询数据时,连接条件要放在哪个子句中( B )

A.   FROM

B.   WHERE

C.   SELECT

D.   HAVING

6、用以下哪个子句来限制分组统计结果信息的显示(D  )

A.   FROM

B.   WEHRE

C.   SELECT

D.   HAVING

7、以下需求中哪个需要用分组函数来实现?( C )

A.   把ORDER表中的定单时间显示成 ‘DD MON YYYY’ 格式

B.   把字符串 ‘JANUARY 28, 2000′ 转换成日期格式

C.   显示PRODUCT 表中的COST 列值总量

D.   把PRODUCT表中的DESCRIPTION列用小写形式显示

8、用以下的SQL语句查询数据库:

SELECT id_number “Part Number”, SUM(price * quantity) TOTAL, description

FROM inventory

WHERE price > 5.00

ORDER BY “Part Number”, 3;

哪一句会产生错误?  ( C )

A.   FROM INVENTORY

B.   WHERE PRICE > 5.00

C.   ORDER BY “PART NUMBER”, 3;

D.   SELECT id_number “Part Number”, SUM(price * quantity) TOTAL, description

9、以下操作符中哪个可以用做单行简单查询的操作符( A )

A.   =

B.   IN

C.   LIKE

D.   BETWEEN

10、Which of the following statements are ?(A )

A. INSERT

B. GRANT

C. TRUNCATE

D. CREATE

11、以下那些命令可以暗含提交操作?( A )

A.   GRANT

B.   UPDATE

C.   SELECT

D.   ROLLBACK

12、Mr. King 是公司的总裁,手下有五个经理,每个经理手下都有若干下属。以下代码的执行结果是:未选定行   没懂

SELECT employee.ename FROM emp employee

WHERE employee.empno not in (

SELECT manager.mgr FROM emp manager);

是什么原因导致如此?(  A )

A. 所有的雇员均有领导           B. 子查询结果集中只有一条记录

C. 子查询结果集中出现一个空值   D. IN运算符不能用在多行子查询中

13、用下面的语句查询数据库:

SELECT price FROM inventory

WHERE price BETWEEN 1 AND 50 OR (price IN(25,70,95)

AND price BETWEEN 25 AND 75);  25<=x<50

下面哪一个值将会被查询到?( A )。

A.30                   B.51                       C.75                        D.95

14、SQL语言中,删除一个表的命令是( B)

A.DELETE

B.DROP

C.CLEAR

D. PURGE

15、只有满足联接条件的记录才包含在查询结果中,这种联接为__C___。

A.左联接 B.右联接 C.内部联接 D.完全联接

17、在SQL*Plus中,要使PL/SQL块中的DBMS_OUTPUT.PUT_LINE()输出到屏幕,需要首先执行命令( D ).(选择一项)

A.set echo on        B.set feedback on       C.set serverout on  D.set screen on

18、下面哪一个操作返回数字值?( D )。

A.’01-2月-1998’+25

B.’03-10月-1997’-30

C.’07-7月-1997’+(480/24)

D.to_date(’01-1月-1998’)-to_date(’01-10月-1996’)

19、下面哪两个操作返回日期型?允许多选  ( A C  )  。

A.to_date(’01-2月-1998′)+25

B.(to_date(’01-1月-1998′)-to_date(’01-10月-1996′))/7

C.to_date(’01-2月-1998′)+12/24

D.to_date(’01-1月-1998′)-to_date(’01-10月-1996′)

20、查看已经建立了哪些表,下面哪些语句能够完成这个任务?(须多选)(B D )

A.desc user_tables;

B.select table_name from user_tables;

C.select table_name from user_tab_columns;

D.select * from tab;

21、如果要输出姓王的学生名单,在where子句中最好用哪一个操作符?( C )

A.=                                           B.IN

C.LIKE                                 D.BETWEEN

22、如果希望进行分组统计的查询输出,可以使用哪个子句。( B )

A.SELECT                                  B.GROUP BY

C.HAVING                 D.ORDER BY

23、在标准SQL中,建立视图的命令是___C_。

A.CREATE SCHEMA命令

B.CREATE TABLE命令

C.CREATE VIEW命令

D.CREATE INDEX命令

24、下面的描述中错误的是:( A )

A.   Oracle表的存储结构为:一个表就是一个物理文件,物理文件和表之间存在着绝对的一一对应关系。

B.   表空间由一个或多个数据文件组成。

C.   系统全局区(SGA)可由所有的服务器和用户进程共享。

D.   段、区间、数据块是Oracle数据库的基本逻辑组织单位。

25、表SERVICE的内容如下:

MACHINE_ID     TECHNICIAN_ID   SERVICE_DATE

———-    —————  ————-

600252       456123            31-六月-1997

980076                         21-十月-1996

458745       456123            21-六月-1997

985625       874512            20-四月-1997

785214       879514            18-五月-1997

执行下面的语句后,哪一个的值将排在最后?(  D)。

SELECT machine_id,service_date FROM service

ORDER BY technician_id,service_date;

A.458745                               B.785214

C.600252                              D.980076

26、要查询表EMP中ENAME的第2个字母为A的所有的人,请选择正确的查询语句。( A )

A.   SELECT EMPNO,ENAME,JOB FROM EMP WHERE ENAME LIKE ’_A%’;

B.   SELECT EMPNO,ENAME,JOB FROM EMP WHERE ENAME=’_A%’;

C.   SELECT EMPNO,ENAME,JOB FROM EMP WHERE ENAME LIKE AS ’_A%’;

D.   SELECT EMPNO,ENAME,JOB FROM EMP WHERE ENAME LIKE ’?A*’;

27、SELECT DEPTNO DNO,DNAME DNA,LOC DLOC FROM DEPT A WHERE A.DEPTNO BETWEEN 10 AND 20 AND DNAME>’B’ AND DLOC ‘NEW YORK’;

请选择对上述语句有错的正确描述。(C  )

A.A.DEPTNO的字段描述方式错。

B.WHERE子句有的表达式返回值不能进行逻辑运算。

C.WHERE子句不能用别名。

D. 以上三个描述都不对。

28、(B )

A.   SELECT ENAME,ROUND(HIREDATE,’MM’) XDATE FROM EMP

B.   SELECT ENAME,TOCHAR(HIREDATE,’YYYY-MM’)||’-01’ XDATE FROM EMP

C.   SELECT ENAME,TOCHAR(HIREDATE,’YYYY-MM’)+’-01’ XDATE FROM EMP

D.   SELECT ENAME,TO_CHAR(HIREDATE,’YYYY-MM’)+’-01’ XDATE FROM EMP

29、查询表EMP中不同DEPTNO的SAL字段的分类合计值 ( B )

A.   SELECT DEPTNO,TOTAL(SAL) FROM EMP GROUP BY DEPTNO

B.   SELECT DEPTNO,SUM(SAL) FROM EMP GROUP BY DEPTNO

C.   SELECT ENAME,TOTAL(SAL) FROM EMP GROUP BY DEPTNO

D.   SELECT ENAME,SUM(SAL) FROM EMP GROUP BY DEPTNO

30、查询表EMP的任意10条记录。( B)

A.SELECT * FROM EMP WHERE ROWNUM<=11

B.   SELECT * FROM EMP WHERE ROWNUM<11

C.   SELECT * FROM EMP WHERE ROWID<=11

D.   SELECT * FROM EMP WHERE ROWID<11

31、查询一个序列SEQ_HZ的新值 ( C )

A.  SELECT SEQ_HZ.NEXT FROM DUAL

B.   SELECT SEQ_HZ.NEWVAL FROM DAUL

C.   SELECT SEQ_HZ.NEXTVAL FROM DUAL

D.   SELECT SEQ_HZ.NEXTROW FROM DAUL

32、 SQL语句中修改表结构的命令是_C____。

A. MODIFY TABLE B. MODIFY STRUCTURE C. ALTER TABLE D. ALTER STRUCTURE

33、 Oracle 数据库存储空间的最小I/O单位是:( B  )

A.   表空间         B.   数据块         C.   段          D.   区间

34、关系数据库中,主键是( A)

A. 为标识表中唯一的实体

B. 创建唯一的索引,允许空值

C. 只允许以表中第一字段建立

D. 允许有多个主键的

35、将查询结果放在数组中应使用(  D )短语。

A. INTO CURSOR B. TO ARRAY C. INTO TABLE D. INTO ARRAY

36、 以下哪条命令用于删除一个约束?(  C)
A. Alter TABLE MODIFY CONSTRAINT            B. Drop CONSTRAINT
C. Alter TABLE Drop CONSTRAINT                D. Alter CONSTRAINT Drop

二、     简答题

本题用到下面三个关系表:

CARD     借书卡。   CNO 卡号,NAME  姓名,CLASS 班级

BOOKS    图书。     BNO 书号,BNAME 书名,AUTHOR 作者,PRICE 单价,QUANTITY 库存册数

BORROW   借书记录。 CNO 借书卡号,BNO 书号,RDATE 还书日期

备注:限定每人每种书只能借一本;库存册数随借书、还书而改变。

要求实现如下15个处理:

1.  写出建立BORROW表的SQL语句,要求定义主码完整性约束和引用完整性约束。

create table BORROW(CNO int FOREIGN KEY REFERENCES CARD(CNO),BNO int FOREIGN KEY REFERENCES BOOKS(BNO),RDATE datetime,primary key(CNO,BNO));

2.  找出借书超过5本的读者,输出借书卡号及所借图书册数。

Select CNO,number=count(*) from BORROW group by CNO  having count(*)>5;

3.  查询借阅了"水浒"一书的读者,输出姓名及班级。

Select NAME,CLASS from CARD c where exist (select  * from BORROW b1,BOOK b2 where b1.BND=b2.BND and b2.name = ‘水浒’ and a.CNO=b2.CNO);

4.  查询过期未还图书,输出借阅者(卡号)、书号及还书日期。

Select * from BORROW where RDATE < GETDATE();

5.  查询书名包括"网络"关键词的图书,输出书号、书名、作者。

Select BNO,BNAME,AUTHOR from BOOKS where BNAME like ‘%网络%’;

6.  查询现有图书中价格最高的图书,输出书名及作者。

Select BNAME,AUTHOR from BOOKS where PRICE=(select max(PRICE) from BOOKS);

7.  查询当前借了"计算方法"但没有借"计算方法习题集"的读者,输出其借书卡号,并按卡号降序排序输出。

Select a.CNO from BORROW a,BOOKS b where a.BNO=b.BNO and b.BNAME=’计算方法’ and not exists(

Select * from BORROW a1,BOOKS b1 where a1.BNO=b1.BNO and b1.BNAME =’计算方法习题集’ and a1.CNO=a.CNO );

8.  将"C01"班同学所借图书的还期都延长一周。

Update BORROW set RDATE=DATEADD(DAY,7,BORROW.RDATE) from CARD,BORROW where CARD.CNO=BORROW.CNO and CARD.CALSS=’C01’;

9.  从BOOKS表中删除当前无人借阅的图书记录。

Delete from BOOKS where BNO not exist(select * from BORROW where BNO=BOOKS.BNO)

10. 如果经常按书名查询图书信息,请建立合适的索引。

Create index index_books_BNAME on BOOKS(BNAME);

11.在BORROW表上建立一个触发器,完成如下功能:如果读者借阅的书名是"数据库技术及应用",就将该读者的借阅记录保存在BORROW_SAVE表中(注ORROW_SAVE表结构同BORROW表)。

12.建立一个视图,显示""班学生的借书信息(只要求显示姓名和书名)。

Create view t_view as select a.NAME,b.BNAME from BORROW c,CARD a,BOOKS b where c.CNO=a.CNO and c.BNO=b.BNO and a.CLASS=” 力01”;

13.查询当前同时借有"计算方法"和"组合数学"两本书的读者,输出其借书卡号,并按卡号升序排序输出。

Select a.CNO from BORROW a,BOOKS b where a.BNO=b.BNO and b.BNAME IN(‘计算方法’,’ 组合数学’)

Group by a.CNO

Having count(*)=2

Order by a.CNO DESC.

14.假定在建BOOKS表时没有定义主码,写出为BOOKS表追加定义主码的语句。

Alter table BOOKS add primary key(BNO);  后加主键

15.对CARD表做如下修改:

a. 将NAME最大列宽增加到10个字符(假定原为6个字符)。

Alter table card modify NAME varchar(10)

b. 为该表增加1列NAME(系名),可变长,最大20个字符。

Alter table card add column varchar(20)

转载于:https://www.cnblogs.com/shan1393/p/9117763.html

笔试题: 数据库 已看1 一些关键的sql语句练习 和选择题 有用 sql语句练习 挺好...相关推荐

  1. 面试题: 数据库 已看1 视图 游标

    数据库常见面试题总结 1. 数据库三范式是什么? 第一范式:表中每个字段都不能再分. 第二范式:满足第一范式并且表中的非主键字段都依赖于主键字段.完全依赖 不能是部分依赖 第三范式:满足第二范式并且表 ...

  2. 华为校招java笔试题库_华为校招Java笔试题库,看你会不会做

    1.在java中如果声明一个类为final,表示什么意思? 答:final是最终的意思,final可用于定义变量.方法和类但含义不同,声明为final的类不能被继承. 2.父类的构造方法是否可以被子类 ...

  3. java面试题36 已知如下的命令执行 java MyTest a b c 请问哪个语句是正确的? ( )

    java面试题36 已知如下的命令执行 java MyTest a b c 请问哪个语句是正确的? ( ) A args[0] = "MyTest a b c" B args[0] ...

  4. 最近面试的软件测试笔试题笔试题(已整理参考答案)

    1.常见的测试用例设计方法都有哪些?分别以具体的例子来说明这些方法在测试用例设计工作中的应用. 1. 等价类划分 等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的 ...

  5. 面试题: mysql数据库 已看1 索引和事务 没用

    mysql数据库面试总结 2017年09月04日 00:11:40 阅读数:151 结合网上大神还有自己面试经历,收集的总结Mysql面试题,方便自己准备面试: mysql一个永远都复习不完,尽量总结 ...

  6. 面试题: mysql数据库 已看1 简单的sql练习

    数据库总结--MySQL常见面试题 2015年03月24日 17:56:06 阅读数:7787 1.根据部门号从高到低,工资从低到高列出员工的信息 select * from employee ord ...

  7. 面试题: mysql 数据库已看 sql安全性 索引 引擎 sql优化

    总结的一些MySQL数据库面试题 2016年06月16日 11:41:18 阅读数:4950 一.sql语句应该考虑哪些安全性? (1)防止sql注入,对特殊字符进行转义,过滤或者使用预编译的sql语 ...

  8. mysql数据库简单查询试题_面试题: mysql数据库 已看1 简单的sql练习

    1.根据部门号从高到低,工资从低到高列出员工的信息 select * from employee order by dept_id desc,salary 2.union和union all的区别 用 ...

  9. 面试题:各大公司Java后端开发面试题总结 已看1 背1 有用 链接有必要看看

    ThreadLocal(线程变量副本)       --整理 Synchronized实现内存共享,ThreadLocal为每个线程维护一个本地变量. 采用空间换时间,它用于线程间的数据隔离,为每一个 ...

  10. 面试题: 难点 已看1

    1.http和https区别 https协议需要到ca申请证书,一般免费证书很少,需要交费.  http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议  http和h ...

最新文章

  1. java script怎么用_如何在HTML中使用javascript?
  2. 从714里连续减去6减几次得0_数学干货 | 小学数学1—6年级基础知识整理 ,预习复习都能用...
  3. react如何卸载组件_reactjs – 如何删除/卸载嵌套的反应组件
  4. 八位流水灯的verilog代码_Arduino入门 第七节-彗星灯 呼吸流水灯
  5. kuboard使用mysql_Kuboard Kubernetes安装
  6. 编程之美 4.6桶中取黑白球
  7. 没事学学docker(二):本地Centos7和阿里云服务器安装docker及其解决安装出现的问题
  8. Hadoop上传文件到HDFS失败
  9. 【收藏】基于Dockerfile搭建JAVA Tomcat运行环境
  10. Unity3D开发学习
  11. 什么是远程桌面?花生壳+Windows远程桌面控制教程
  12. DroidCam通过网络调用手机摄像头的方法二
  13. WDM驱动inf模板
  14. GO分析(cytoscape)
  15. 远程桌面用户账户无效
  16. [转载] 高校两院院士名单
  17. qt 禁止alt+f4_禁止上下关闭按钮和Alt + F4
  18. java检测弹窗并自动enter_JAVA实现自动检测股票波动情况,然后桌面上弹窗显示...
  19. 求生之路2 服务器 修改难度,《求生之路2》服务器指令及难度参数设置难度篇.pdf...
  20. Caused by: java. io. IOException: Could not find resource com/kuang/dao/UserMapper.xml

热门文章

  1. uni-app uniCloud 开发实践 ,天气预报,小程序,h5,app ,001章
  2. react+antd 权限管理 Tree树形控件
  3. 天气预测频繁2项集_寻攻略 | 天气不似预期?我从来没在怕的
  4. VS debug调试时提示“未找到源”
  5. MATLAB compatloose,麻烦帮忙看下这个视频
  6. x11获得窗口名的代码
  7. 管理新论:少谈精神文化,强调工作作风
  8. 全网首发:使用命令行编译VS工程为Win32/x64
  9. 全网首发:麒麟平台更新时提示错误:无法解析域名“archive.kylinos.cn”
  10. 一旦辞职,应该立即批准。留一段时间没有好处