设为首页 收藏本站
查看: 1001|回复: 0

[经验分享] oracle考试题

[复制链接]

尚未签到

发表于 2018-9-21 11:31:17 | 显示全部楼层 |阅读模式
  一、选择题(40分)
  Oracle发出下列select语句:
  SQL> select e.empno, e.ename, d.loc
  2 from emp e, dept d
  3 where e.deptno = d.deptno
  4 and substr(e.ename, 1, 1) = ‘S’;
  下列哪个语句是Oracle数据库中可用的ANSI兼容等价语句?
  A.select empno, ename, loc from emp join dept on emp.deptno = dept.deptno where
  substr(emp.ename, 1, 1) = ‘S’;
  B.select empno, ename, loc from emp, dept on emp.deptno = dept.deptno where
  substr(emp.ename, 1, 1) = ‘S’;
  C.select empno, ename, loc from emp join dept where emp.deptno = dept.deptno and
  substr(emp.ename, 1, 1) = ‘S’;
  D.select empno, ename, loc from emp left join dept on emp.deptno = dept.deptno and
  substr(emp.ename, 1, 1) = ‘S’;
  下列哪个选项表示Oracle中select语句的功能?
  A.可以用select语句改变Oracle中的数据          B.可以用select语句删除Oracle中的数据
  C.可以用select语句和另一个表的内容生成一个表  D.可以用select语句对表截断
  你要操纵Oracle数据,下列哪个不是SQL命令?
  A.select * from dual;        B.set define
  C.update emp set ename = 6543 where ename = ‘SMITHERS’;
  D.create table employees(empid varchar2(10) primary key);
  你要在Oracle中定义SQL查询。下列哪个数据库对象不能直接从select语句中引用?
  A.表    B.序列    C.索引    D.视图
  你要根据PRODUCT_NAME列从PROFITS表查询中过滤返回的数据。下列哪个子句包含相应过滤条件的引用?
  A.select      B.from      C.where      D.having
  用下列代码所示的内容回答后面五个问题:
  EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
  7369SIMTHCLERK790217-DEC-8080020
  7499ALLENSALESMAN769820-FEB-81160030030
  7521WARDSALESMAN769822-FEB-81125050030
  7566JONESMANAGER783902-APR-81297520
  7654MARTINSALESMAN769828-SEP-811250140030
  7698BLAKEMANAGER783901-MAY-81285030
  7782CLARKMANAGER783909-JUN-81245010
  7788SCOTTANALYST756619-APR-82300020
  7839KINGPRESIDENT17-NOV-81500010
  7844TURNERSALESMAN769808-SET-811500030
  7876ADAMSCLERK778823-DEC-82110020
  7900JAMESCLERK769803-DEC-8195030
  7902 FORD ANALYST 7566 03-DEC-81 3000 20
  7934 MILLER CLERK 7782 23-JAN-82 1300 10
  以下选项中哪个是下列查询返回的值:select sum(sal) + sum(comm) from emp where job = ‘ANALYST’ or ename like ‘J%’ ?
  A.6000      B.9925      C.9975      D.NULL null参与运算后的结果还是null
  以下选项中哪个是下列查询返回的值:select count(mgr) from emp where deptno = 10 ?
  A.1         B.2 count运算可以忽略空行        C.3         D.NULL
  以下选项中哪个是下列查询返回的值:select count(*) from emp where mgr = 7700-2 ?
  A.5         B.6         C.7         D.NULL
  以下选项中哪个是下列SQL命令产生的第三个员工:select ename, sal from emp where job= ‘SALESMAN’ order by empno desc ?
  A.ALLEN   B.MARTIN   C.TURNER  D.WARD
  以下选项中哪个是发出下列查询后Oracle返回的值:select substr(job, 1, 3) from emp where ename like upper(‘__ar%’) ?
  A.ANA     B.CLE       C.MAN       D.SAL
  要从ORDERS表中取得数据,其中包括三个列CUSTOMER、ORDER_DATE与ORDER_AMT。可以用下列哪个where子句查询ORDERS表,取得客户LESLIE超过2700的订单?
  A.where customer = ‘LESLIE’;
  B.where customer = ‘LESLIE’ and order_amt < 2700;
  C.where customer = ‘LESLIE’ or order_amt > 2700;
  D.where customer = ‘LESLIE’ and order_amt > 2700;
  对表中的某一行,VARCHAR2列包含数值SMITHY,应用程序在右侧填充七个空格。length()函数处理这个列值时,返回什么值?
  A.6            B.13            C.30           D.60
  在Oracle中发出的下列查询:
  SQL> select months_between(‘15-MAR-83’,’15-MAR-97’) form dual;
  Oracle返回什么?
  A.14        B.-14         C.168       D.-168
  开发报表时,要连接三个表的信息,这些表为EMP、DEPT与SALGRADE。只需要公司10级员工相应的员工姓名、部门地址与工资的记录。这个查询需要多少条件?
  A.2      B.3      C.4     D.5
  Oracle中发出下列命令:
  SQL> select e.ename,a.street_address,a.city,a.post_code
  2  from emp e,addr a
  3  where e.empno = a.empno(+)
  4  and a.state = ‘TEXAS’;
  下列哪个选项显示等价ANSI/ISO语句?
  A.select e.ename, a.street_address, a.city, a.state, a.post_code from emp e outer join addr a on e.empno = a.empno where a.state = ‘TEXAS’;
  B.select e.ename, a.street_address, a.city, a.state, a.post_code from emp e left outer join addr a on e.empno = a.empno where a.state = ‘TEXAS’;
  C.select e.ename, a.street_address, a.city, a.state, a.post_code from emp e right outer join addr a on e.empno = a.empno where a.state = ‘TEXAS’;
  D.select e.ename, a.street_address, a.city, a.state, a.post_code from emp e right outer join addr a where e.empno = a.empno(+) and a.state = ‘TEXAS’;
  对数据库运行下列哪个group by查询时会从Oracle产生错误?
  A.select deptno, job, sum(sal) from emp group by job, deptno;
  B.select sum(sal), deptno, job from emp group by job, deptno;
  C.select deptno, job, sum(sal) from emp;
  D.select deptno, sum(sal), job from emp group by job, deptno;
  检查下列SQL的输出
  SQL> select a.deptno,a.job,b.loc,sum(a.sal)
  2  from dmp a,dept b
  3  where a.deptno = b.depton
  4  group by a.deptno,a.job,b.loc
  5 order by sum(a.sal);
  这个查询按哪个列的顺序返回输出?
  A.A.DEPTNO    B.A.JOB     C.B.LOC     D.SUM(A.SAL)
  用下列代码块回答问题:
  SQL> select deptno,job,avg(sal)
  2  from emp
  3  group by deptno,job
  4  having avg(sal)>
  5    ( select sal
  6       from emp
  7       where ename = ‘MARTIN’ );
  上述语句使用下面哪种子查询?
  A.单行子查询     B.多行子查询     C.from子句子查询    D.多列子查询
  查询语句返回的结果是单行就是单行子查询
  查询语句返回的是多行就是多行子查询
  Oracle中要生成数据库表,下列哪个选项是无效表生成的语句?
  A.create table cats(c_name varchar2(10), c_weight number, c_owner varchar2(10));
  B.create table my_cats as select * from cats where owner = ‘ME’;
  C.create global temporary table temp_cats(c_name varchar2(10), c_weight number, c_owner varchar2(10));
  D.create table 51cats as select c_name, c_weight from cats where c_weight > 5;
  JOB表有三个列JOB_NAME、JOB_DESC和JOB_WAGE。用下列命令在JOB_DESC表中插入新行:
  SQL> insert into job(job_name, job_desc)
  2  values (‘LUCKEY’, ‘MAKES COFFEE’);
  之后查询这个表时得到的结果:
  SQL> select * from job where job_name = ‘LUCKEY’;
  JOB_NAME JOB_DESC JOB_WAGE
  LUCKEY MAKES COFFEE       35
  数据是如何填信JOB_WAGE表的?
  A.JOB表中的LUCKEY行已经存在,JOB_WAGE设置为35。
  B.生成表时JOB_WAGE列定义的default子句指定插入行时的值。
  C.insert语句的values子句包含隐藏值,在插入行时加入。
  D.惟一理由是对JOB表发出的后一个update语句增加了JOB_WAGE值
  二、问答题(20分)

  • 写出常见的事务控制语句?举例说说事务具体的应用?
  答:常见事物语句:commit,rollback,savepoint
  举例:① DML A ……;
  ② COMMIT;
  ③ DML B……;
  ④ ROLLBACK;
  ⑤ DML C;
  ⑥ SAVEPOINT sp;
  ⑦ DML D……;
  ⑧ ROLLBACK TO sp;
  分析:第二行提交语句执行过后,第四行的rollback语句回滚只能回滚到第二行,说明第三行的DML语句对数据库操作失效;第六行的设置保存点标记过以后,第八行的回滚就能回滚到sp保存点。

  • oracle中如何获取系统时间?
  答:select to_char(sysdate,’yyyy-mm-dd hh24:mi:ss’) from dual;

  • Truncate与 delete的区别?
  答:两者都删除了表中数据,区别在于,delete语句只删除了数据,没有释放表的存储空间,而truncate语句既删除了表数据,也自动释放了表的存储空间,效率更高。

  • DDL和DML分别代表什么?
  答:DDL:Date Definition Language(数据定义语言),包括alter、rename、create、drop……
  DML:Date Manipulation Language(数据操作语言)

  • Oracle使用什么语句给用户分配权限?
  答:grant……to……
  三、有员工表emp(eno,ename,salary,dno),其中各字段的含义依次为职工号、姓名、工资和所在部门号;有部门表dept(dno,dname),其中各字段的含义依次为部门号、部门名称。(10分)
  1) 请用SQL语句将”销售部”的那些工资数额低于3000元的职工的工资上调10%.
  update emp
  set salary=salary*1.1
  where salary=60;


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-599365-1-1.html 上篇帖子: Oracle Database 用户管理 下篇帖子: oracle期末考试题
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表