In the EMPLOYEES table there are 1000 rows and employees are working in the company for more than 10 years.
Evaluate the following SQL statement:
SQL> UPDATE employees
SET salary = NVL(salary,0) + NVL(comm,0),comm = NVL(comm,0)
WHERE hire_date < SYSDATE - 600;
What would be the result?
A) It gives an error because NVL function cannot be used with UPDATE.
B) It gives an error because multiple NVL functions are used in an expression.
C) It executes successfully and updates the records of those employees who have been working in the company for more than 600 days.
D) It executes successfully but no rows updated.
Answer:C
(SQL> update emp
2 set sal=nvl(sal,0)+nvl(comm,0),comm=nvl(comm,0)
3 where hiredate < sysdate - 100;
已更新 14 行。
)
原文地址:http://blog.51cto.com/13854012/2352562