select 1 - ((select to_number(value)
from v$sysstat t
where t.name = 'physical reads') -
(select to_number(value)
from v$sysstat t
where t.name = 'physical reads direct') -
(select to_number(value)
from v$sysstat t
where t.name = 'physical reads direct (lob)')) /
(select to_number(value)
from v$sysstat t
where t.name = 'session logical reads')
from dual;