SQL SELECT 语句问题

SQL SELECT 语句问题


1. 识别 SELECT 语句的功能。

  1. 投影
  2. 选择
  3. 数据控制
  4. 交易

答案:A、 B。SELECT 语句可用于选择、投影和连接。

2. 确定给定查询中展示的 SELECT 语句的能力。

SELECT e.ename, d.dname
FROM   emp e, dept d
WHERE  e.deptno = d.deptno
AND    e.sal > 1000;
  1. 选择
  2. 过滤
  3. 加盟
  4. 投影

答案:A、C、D。投影仅包括查询中所需的列,而选择仅选择所需的数据。联接是指通过连接列将两个表组合在一起。

3. 以下哪个子句用于抑制 SELECT 语句中的重复项?

  1. 相交
  2. 复制
  3. 清楚的
  4. 独特

答案:C、D。可以在 SELECT 语句中使用 DISTINCT 或 UNIQUE 来限制重复数据。

4.选择正确指定规则的语句来编写SQL语句

  1. SQL 语句区分大小写
  2. 关键字可以缩写以建立标准
  3. SQL 语句不区分大小写
  4. 子句必须放在一起

答案:C. SQL 语句不区分大小写。

5. 确定以下查询的输出 –

SELECT '5+7' 
FROM dual;
  1. 12
  2. 5+7
  3. 5
  4. 7

答案:B. Oracle 将双引号内的值视为字符串表达式。

6. 编写查询以显示 EMP 表中的员工详细信息(姓名、部门、​​薪水和工作)。

  1. SELECT ename, deptno, sal, job FROM emp;
  2. SELECT * FROM emp;
  3. SELECT DISTINCT ename, deptno, sal, job FROM emp;
  4. SELECT ename, deptno, sal FROM emp;

答案 A.从表中选择所需的,每个表用逗号分隔。

7. 以下哪个查询在增加1000后显示员工姓名和新工资?

  1. SELECT ename, sal FROM emp;
  2. SELECT ename, sal=sal+1000 FROM emp;
  3. SELECT ename, sal+1000 FROM emp;
  4. SELECT ename, 1000 FROM emp;

答案:C.可以使用 SELECT 语句中的列来完成基本的算术计算。

8. 确定以下查询的输出

SELECT 36/2-5*10 FROM dual;
  1. 130
  2. -32
  3. -120
  4. 175

答案:B.乘法和除法发生在加法和减法之前。

9. 确定以下查询的输出

SELECT (100-25)/15*(20-3) FROM dual;
  1. 0.294
  2. -85
  3. 63.67
  4. 85

答案:D。括号内的表达式在表达式中的除法和乘法之前执行。

10. 选择正确定义 NULL 值的语句。

  1. NULL 是一个具有零字节的特殊值
  2. NULL 是没有值或未知值
  3. NULL 由空格表示
  4. NULL 与零不同

答案:B、 D。NULL 是无值但既不等于零也不等于空白或空格字符。

11. 确定以下查询的输出

SELECT sal + NULL 
FROM emp
WHERE empno = 7369;
  1. 萨尔 + 空
  2. 无效的
  3. 0
  4. 1250

答案:B.任何带有 NULL 的算术运算都会导致 NULL。

12. 以下哪个语句正确定义了列别名?

  1. 列别名重命名列标题
  2. 列别名是表中的备用列
  3. 可以在表定义期间指定列别名
  4. 列别名紧跟在 SELECT 语句中的列或表达式之后

答案:A、D。列别名可用于命名 SELECT 语句中的表达式。

13.在下面的SQL查询中为包含salary的表达式指定列别名NEWSAL

SELECT ename, job, sal + 100 FROM emp;
  1. (sal + 100) 作为新闻
  2. (sal + 100) 新闻
  3. (sal + 100) 是新闻
  4. sal + 100 是新闻

答案:A、B。使用“AS”表示列表达式的新别名。

14.在下面的SQL查询中为包含salary的表达式指定列别名“New Salary”

SELECT ename, job, sal + 100 FROM emp;
  1. (sal + 100) AS 新薪水
  2. (sal + 100) “新薪水”
  3. (sal + 100) 是新薪水
  4. sal + 100 作为“新工资”

答案:B、D。带有空格和特殊字符的列别名必须用双引号括起来。

15. 哪个命令用于显示表的结构?

  1. 列表
  2. 显示
  3. 描述
  4. 结构体

答案: C.DESCRIBE 用于显示表结构。

16. 预测在 SQL* Plus 中执行以下语句时的输出?

DESC emp
  1. 引发错误“SP2-0042:未知命令“desc emp”- 其余行被忽略。”
  2. 列出 EMP 表的列
  3. 列出 EMP 表列、它们的数据类型和空值
  4. 列出 EMP 表的列及其数据类型

答案:C. DESCRIBE 用于显示表结构以及表列、它们的数据类型和空值

17. 下列关于 DESCRIBE 命令的说法中哪些是正确的?

  1. 它只能在 SQL*Plus 中使用
  2. 它可以在 SQL*Plus 和 SQL Developer 中使用
  3. 它不适用于对象表
  4. 它不适用于 SYS 拥有的表

答案:B。

18. 以下哪些字母数字字符用于表示 SQL 中的连接运算符?

  1. +
  2. ||
  3. ——
  4. ::

答案:B。在 SQL 中,连接运算符由两个竖线 (||) 表示。

19.关于SQL中连接运算符的使用,下列说法正确的是?

  1. 它在表中创建一个虚拟列
  2. 它生成一个字符表达式作为一个或多个字符串的连接结果
  3. 它在两个字符列之间创建链接
  4. 它可用于将日期表达式与其他列连接

答案:B、D。连接运算符将两个值连接为一个表达式。

20. 预测以下查询的输出

SELECT ename || NULL
FROM emp
WHERE empno = 7369
  1. 史密斯
  2. 史密斯 NULL
  3. 史密斯空
  4. ORA-00904: “NULL”: 无效标识符

答案: A.与 NULL 的连接结果为相同的值。

21. 预测以下查询的输出

SELECT 50 || 0001
FROM dual
  1. 500001
  2. 51
  3. 501
  4. 5001

答案:C . 表达式右操作数中的前导零被 Oracle 忽略。

22.您执行以下查询

SELECT e.ename||' departments's name is:'|| d.dname
FROM emp e, dept d
where e.deptno=d.deptno;

并获得异常 – ORA-01756:引用的字符串未正确终止。以下哪种解决方案可以永久解决问题?

  1. 对文字字符串使用双引号
  2. 使用 [q] 运算符将文字字符串加引号并选择所选择的分隔符
  3. 从文字字符串中删除单引号(撇号)
  4. 使用另一个分隔符绕过文字字符串中的单引号撇号

答案:B . [q] 运算符用于用引号将字符文字括起来。

23. 下面哪个 SELECT 语句显示了 [q] 运算符的正确用法?

  1. SELECT e.ename || q'[department's name is]'|| d.dname
       FROM emp e, dept d
       WHERE e.deptno = d.deptno;
  2. SELECT e.ename || q['department's name is']|| d.dname
       FROM emp e, dept d
       WHERE e.deptno = d.deptno;
  3. SELECT e.ename || q[department's name is]|| d.dname
       FROM emp e, dept d
       WHERE e.deptno = d.deptno;
  4. SELECT e.ename || q'(department's name is)'|| d.dname
       FROM emp e, dept d
       WHERE e.deptno = d.deptno;

答案:A

24. 下面哪个SELECT语句用于选择EMP表的所有列?

  1. SELECT ALL FROM emp
  2. SELECT # FROM emp
  3. SELECT * FROM emp
  4. SELECT empno,ename,deptno,sal,job,mgr,hiredate FROM emp

答案:C。字符“*”用于选择表的所有列。

25. 以下哪个 SQL 查询会显示员工姓名、部门和年薪?

  1. SELECT ename, deptno, sal FROM emp;
  2. SELECT ename, deptno, sal + comm FROM emp;
  3. SELECT ename, deptno, (sal * 12) Annual_Sal FROM emp;
  4. 由于表中不存在该列,因此无法查询年薪

答案:C.在 SELECT 语句中使用数字表达式执行基本的算术计算。

觉得文章有用?

点个广告表达一下你的爱意吧 !😁