oracle 笔试题

ORACLE笔试题
1、单选题
1.在Oracle中,如下不属于集合操做符的是( )。
A. UNION B. SUM C. MINUS D. INTERSECT
2.在Oracle中,执行下面的语句:
SELECT ceil(-97.342),
floor(-97.342),
round(-97.342),
trunc(-97.342)
FROM dual;数据库

哪一个函数的返回值不等于-97()。
A.ceil() B. floor() C. round(0) D. trunc()编程

3.如下哪一个命令能够被用来从表 STATE中 drop 列 UPDATE_DT ( )。
A. ALTER TABLE STATE DROP COLUMN UPDATE_DT;
B. ALTER TABLE STATE REMOVE COLUMN UPDATE_DT;
C. DROP COLUMN UPDATE_DT FROM STATE;
D. 你不能从这个表中DROP该列.
4.哪一个命令用来建立一个primary key constraint pk_books 在表 books, 列 ISBN上,请选择一个( )。
A. create primary key on books(ISBN);
B. create constraint pk_books primary key on books(ISBN);
C. alter table books add constraint pk_books primary key (ISBN);
D. alter table books add primary key (ISBN);
5.如下哪行有错( )。
1 X :=Y +200;
2 IF X <10 THEN
3 Y :=30;
4 ELSEIF X <40 THEN
5 Y :=20;
6 END IF;
7 END IF;
A. Line 2 B. Line 3 C. Line 4 D. Line 5
6.一个VIEW被如下语句建立,请问在该VIEW上可进行哪一个操做( )
CREATE VIEW USA_STATES
AS SELECT *FROM STATE
WHERE CNT_CODE =1
WITH READ ONLY;
A. SELECT B. SELECT , UPDATE C. SELECT , DELETE D. SELECT , INSERT
7.下面哪一个语句是表示将T表中第3~5行数据列出来的SQL语句()。
A. select * from t where rownum <=5
minus
select * from t where rownum <=2;
B. select * from t where rownum <=5
intersect
select * from t where rownum <=2;
C. select * from t where rownum <=5
union
select * from t where rownum <=2;
D. select * from t where rownum <=5
union all
select * from t where rownum <=2;
8.表EMPLOYEES的结构为:
(
EMP_ID NUMBER(4) NOT NULL
LAST_NAME VARCHAR2(30) NOT NULL
FIRST_NAME VARCHAR2(30)
DEPT_ID NUMBER(2)
JOB_CAT VARCHAR2(30)
SALARY NUMBER(8,2)
)
下面哪条语句能够查出各个dept_id的最大salary值和最小salary值而且它的最小值小于5000最大值大于15000( )
A. SELECT dept_id, MIN(salary), MAX(salary) FROM employees
WHERE MIN(salary) < 5000 AND MAX(salary) > 15000;
B. SELECT dept_id, MIN(salary), MAX(salary) FROM employees
WHERE MIN(salary) < 5000 AND MAX(salary) > 15000 GROUP BY dept_id;
C. SELECT dept_id, MIN(salary), MAX(salary) FROM employees
HAVING MIN(salary) < 5000 AND MAX(salary) > 15000;
D. SELECT dept_id, MIN(salary), MAX(salary) FROM employees
GROUP BY dept_id HAVING MIN(salary) < 5000 AND MAX(salary) > 15000;
E. SELECT dept_id, MIN(salary), MAX(salary) FROM employees
GROUP BY dept_id, salary HAVING MIN(salary) < 5000 AND MAX(salary) > 15000;oracle

9.在oracle中,下面哪一个函数与||运算符有相同的功能( )。
A、 ltrim B、contact C、substr D、instr函数

10.函数floor(-2345.67)返回结果是( )。
A. 2345.67 B. 2346 C.-2346 D. -2345字符串

11. Oracle数据库中,下面()能够做为有效的列名。(选择一项)
A. Column B. 123_NUM C. NUM_#123 D. #NUM123
12.表TEST数据以下,P_ID为上级ID:
CREATE TABLE TEST AS
SELECT 1 ID ,NULL P_ID ,'a' NAME FROM DUAL UNION
SELECT 2 ID ,1 P_ID ,'b' NAME FROM DUAL UNION
SELECT 3 ID ,1 P_ID ,'c' NAME FROM DUAL UNION
SELECT 4 ID ,2 P_ID ,'d' NAME FROM DUAL UNION
SELECT 5 ID ,2 P_ID ,'e' NAME FROM DUAL UNION
SELECT 6 ID ,4 P_ID ,'f' NAME FROM DUAL UNION
SELECT 7 ID ,4 P_ID ,'g' NAME FROM DUAL UNION
SELECT 8 ID ,1 P_ID ,'h' NAME FROM DUAL;
如下哪段SQL实现查询ID为2但不包括ID=2的全部下级数据( )。
A. SELECT * FROM TEST CONNECT BY PRIOR P_ID=ID START WITH ID=2;
B. SELECT * FROM TEST CONNECT BY PRIOR ID=P_ID START WITH ID=2;
C. SELECT * FROM TEST CONNECT BY PRIOR P_ID=ID START WITH P_ID=2;
D. SELECT * FROM TEST CONNECT BY PRIOR ID=P_ID START WITH P_ID=2;
13. 表EMPLOYEES结构为
(
EMPLOYEE_ID NUMBER(6) not null primary key,
FIRST_NAME VARCHAR2(20) unique,
LAST_NAME VARCHAR2(25),
EMAIL VARCHAR2(25) not null,
PHONE_NUMBER VARCHAR2(20),
HIRE_DATE DATE,
JOB_ID VARCHAR2(10),
SALARY NUMBER(8,2),
COMMISSION_PCT NUMBER(2,2),
MANAGER_ID NUMBER(6),
DEPARTMENT_ID NUMBER(4)
)
如下哪几个语句可算出表中记录,多选 ( )
A.select count(*) from EMPLOYEES
B.select count(EMPLOYEE_ID) from employees
C.select count(FIRST_NAME) from employees
D.select count(EMAIL) from employees
E.select count(JOB_ID) from employees
2、简答题
1. 有EMP表一张,字段为ID,NAME,ID有重复数据,请写出有重复数据的id、NAME语句,并写出没有重复数据的ID、name语句。io


2. 去除字符串“ aabb ”两边的空格(函数)。table


3. student表字段为(classno,name,birthday),将全部3班出生日期小于1981年5月12日的记录删除。class


4. student表字段为(classno,name,score)
修改表student的数据,将全部一班的学生成绩加10分date

 

3、编程题
表结构以下:
Dept(部门表): dno(部门号),dname(部门名)
Emp(员工表):eno(员工号),ename(员工姓名),esex(性别:男士/女士),sal(工资),dno(部门号),join_date(入职时间),elevel(级别:1,2,3…)
1. 列出部门为“销售部”,入职时间为2011年12月1日以前的全部男员工工资大于5000元的信息,并按入职时间降序、工资升序进行展现,展现内容为:部门名,员工姓名,工资,入职时间。select

 


2. 列出员工人数最多的部门员工平均工资。
答:

 


3. 写出SQL实现入职超过三年的员 工工资增长10%、级别加1。

 

4. 列出各部门员工工资在2000到3000之间不一样性别人数,展现字段以下:部门、男士人数、女士人数。

相关文章
相关标签/搜索