Which two types of query results cannot be stored in the query result cache?
(Choose two.)
A.
subquery results
B.
results of a query having the SYSDATE function
C.
results of a query having the GROUP BY clause
D.
results of a query having the DATE data type in the WHERE clause
A,B
A) is incorrect, subquery result could be cached.
http://dbaora.com/sql-result-cache-11g/
explain plan for
select * from (
select /*+ RESULT_CACHE */ department_id, sum(salary) from employees
group by department_id
) where department_id=10;
select * from table(dbms_xplan.display);
Plan hash value: 2700420355
———————————————————–
| Id | Operation | Name |
———————————————————–
| 0 | SELECT STATEMENT | |
|* 1 | VIEW | |
| 2 | RESULT CACHE | 3q3armf1zrhd49k2jnb3461mz5 |
| 3 | HASH GROUP BY | |
| 4 | TABLE ACCESS FULL| EMPLOYEES |
———————————————————–
That’s not a subquery; that’s an inline view.
It is possible to embed a SQL statement within another. When this is done on the WHERE or the HAVING statements, we have a subquery construct.