Which statement is true regarding the above two queries?

Evaluate the following two queries:
SQL> SELECT cust_last_name, cust_city
FROM customers
WHERE cust_credit_limit IN (1000, 2000, 3000);
SQL> SELECT cust_last_name, cust_city
FROM customers
WHERE cust_credit_limit = 1000 OR cust_credit_limit = 2000 OR
cust_credit_limit = 3000;
Which statement is true regarding the above two queries?

Evaluate the following two queries:
SQL> SELECT cust_last_name, cust_city
FROM customers
WHERE cust_credit_limit IN (1000, 2000, 3000);
SQL> SELECT cust_last_name, cust_city
FROM customers
WHERE cust_credit_limit = 1000 OR cust_credit_limit = 2000 OR
cust_credit_limit = 3000;
Which statement is true regarding the above two queries?

A.
Performance would improve in query 2.

B.
Performance would degrade in query 2.

C.
There would be no change in performance.

D.
Performance would improve in query 2 only if there are null values in the CUST_CREDIT_LIMIT column.

Explanation:
Note: The IN operator is internally evaluated by the Oracle server as a set of OR conditions, such
as a=value1 or a=value2 or a=value3. Therefore, using the IN operator has no performance
benefits and is used only for logical simplicity.



Leave a Reply 0

Your email address will not be published. Required fields are marked *