Oracle 9i笔试题B:部门名转换与工资汇总
需积分: 12 65 浏览量
更新于2024-09-20
收藏 42KB DOC 举报
Oracle 9i 笔试题B涵盖了基础的数据库管理和SQL查询知识。以下是对三个题目逐个解析:
1. 问题:下面哪一个查询将以小写字母显示各个部门的名称?
- 解析:在这个问题中,需要选择一个能够将`Dname`列中的文本转换为小写形式的SQL语句。选项A使用了未定义的`LOW`函数,选项B使用了`LOWER`函数,这是标准的Oracle SQL中用于将字符串转换为小写的函数,所以正确答案是**b.SELECTLOWER(dname)FROMdept;** 选项C使用了`LOWERCASE`,也是正确的拼写,所以另一个正确答案是**c.SELECTLOWERCASE(dname)FROMdept;** 选项D中的`NOTUPPER`没有这个函数,所以不正确。
2. 问题:如果`Sal`列包含员工工资,而`Comm`列包含销售代表的佣金,下面哪个查询将显示每个员工的总工资(包括工资和佣金,若无佣金则显示工资)?
- 解析:为了计算总工资,我们需要确保在没有佣金的情况下,只显示工资。选项A使用`NVL`函数处理这种情况,如果`comm`为NULL(即无佣金),则返回`sal`;其余选项没有明确地处理这种条件。因此,正确答案是**a.SELECTename,sal+NVL(comm,0)AS”GrossSalary”FROMemp;** 选项B使用`NVL2`,与`NVL`类似,但语法更精确,正确;选项C没有使用`NVL`处理NULL值,不完整;选项D的`NVL(sal+com,sal)`在没有佣金时可能直接相加导致错误。
3. 问题:下面哪个查询将返回在部门10工作的所有人的总工资?给出所有正确的答案。
- 解析:要计算部门10的总工资,需要使用`SUM`函数来求和`Sal`列的值。然而,选项B中的`TOTAL`不是一个有效的SQL函数,所以排除。正确答案是**a.SELECTSUM(sal)FROMempWHEREdeptno=10;** 如果想强调没有错误的写法,还可以选择**c.SELECTSUM(sal)FROMempWHEREdeptno=10**,尽管这与选项A含义相同。
总结:Oracle 9i的笔试题涉及SQL查询的基本语法和函数应用,重点考察了数据处理、字符串操作和聚合函数的使用。在实际工作中,熟悉这些基本操作对于编写高效且准确的SQL查询至关重要。
2011-06-15 上传
2011-06-15 上传
2011-06-15 上传
2011-06-15 上传
点击了解资源详情
2012-03-25 上传
2021-10-30 上传
点击了解资源详情
2021-08-30 上传
xr20062008
- 粉丝: 0
- 资源: 5
最新资源
- 深入浅出:自定义 Grunt 任务的实践指南
- 网络物理突变工具的多点路径规划实现与分析
- multifeed: 实现多作者间的超核心共享与同步技术
- C++商品交易系统实习项目详细要求
- macOS系统Python模块whl包安装教程
- 掌握fullstackJS:构建React框架与快速开发应用
- React-Purify: 实现React组件纯净方法的工具介绍
- deck.js:构建现代HTML演示的JavaScript库
- nunn:现代C++17实现的机器学习库开源项目
- Python安装包 Acquisition-4.12-cp35-cp35m-win_amd64.whl.zip 使用说明
- Amaranthus-tuberculatus基因组分析脚本集
- Ubuntu 12.04下Realtek RTL8821AE驱动的向后移植指南
- 掌握Jest环境下的最新jsdom功能
- CAGI Toolkit:开源Asterisk PBX的AGI应用开发
- MyDropDemo: 体验QGraphicsView的拖放功能
- 远程FPGA平台上的Quartus II17.1 LCD色块闪烁现象解析