Result cache was introduced in oracle 11g. Its job is to keep the result set of a query into a subset of the shared pool.It is usually helpful when we have a select query which is frequently used and data is being modified rarely.
So when we use result_cache for a query for the first time, it will take normal time. But subsequent executions will take very less time.

DEMO:

 

 

Now lets use the result_cache hint in the above query and check the performance/execution plan.

As we said before, query with result_cache for the first time, it will take normal time. Next execution will take very less time.

With result_cache the query is taking less 1 second.

 

Result_cache memory Report:

 

 

We can flush the result_cache as below also.

 

Result_cache can be implement for specific tables also.

 

 

 

NOTE:

1. We can’t use result_cache on tables owned by SYS user.