Chinaunix首页 | 论坛 | 博客
  • 博客访问: 673955
  • 博文数量: 487
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 4936
  • 用 户 组: 普通用户
  • 注册时间: 2018-07-05 13:59
个人简介

ocp考试资料群:569933648 验证码:ocp OCP 12c 19c考试题库解析与资料群:钉钉群号:35277291

文章分类

全部博文(487)

文章存档

2024年(2)

2023年(37)

2021年(151)

2020年(37)

2019年(222)

2018年(38)

我的朋友

分类: Oracle

2019-03-06 10:00:50

61、(18-6) choose the best answer:

View the Exhibit and examine the structure of the CUSTOMERS table.

You want to generate a report showing the last names and credit limits of all customers whose last names start with A, B, or C, and credit limit is below 10,000.

Evaluate the following two queries:

SQL> SELECT cust_last_name, cust_credit_limit FROM customers

WHERE (UPPER(cust_last_name) LIKE 'A%' OR

UPPER(cust_last_name) LIKE 'B%' OR

UPPER(cust_last_name) LIKE 'C%')

AND cust_credit_limit < 10000;

SQL> SELECT cust_last_name, cust_credit_limit FROM customers

WHERE UPPER(cust_last_name) BETWEEN 'A' AND 'C'

AND cust_credit_limit < 10000;

Which statement is true regarding the execution of the above queries?

A) Only the second query gives the correct result.

B) Only the first query gives the correct result.

C) Both execute successfully but do not give the required result.

D) Both execute successfully and give the same result.

Answer:B

(解析:验证结果发现第二 sql 语句不能返回 C 开头的名字,如果改为 BETWEEN 'A' AND 'D',则查出来的结果与第一个语句一样,而且语句简洁,答案更好。

经过测试发现,如果数据类型是 number 的,则 between 800 and 3000 的结果包含 3000 的值:

SQL> select sal from emp where sal between 800 and 3000;

SAL

---------

800

1600)

1500

950

3000

但是如果是字符型的,则不包含between 'A' AND 'C'后面的 C :

SQL> select ename from emp where ename between 'A' AND 'C';

ENAME

----------

ALLEN

BLAKE


)

阅读(773) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~