Search notes:

v$px_process_sysstat

with px_process_sysstat as (
  select
    max(case when trim(statistic) = 'Servers In Use'    then value end) servers_in_use,
    max(case when trim(statistic) = 'Servers Available' then value end) servers_available,
    max(case when trim(statistic) = 'Servers Highwater' then value end) servers_highwater
  from
    v$px_process_sysstat
),
px_process as (
  select
    sum(case when status = 'IN USE'    then 1 end) sum_in_use,
    sum(case when status = 'AVAILABLE' then 1 end) sum_available
  from
    v$px_process
),
init_param as (
  select
    value           parallel_max_servers
  from
    v$parameter
  where
    name = 'parallel_max_servers'
)
select
  prs.servers_in_use,
  prc.sum_in_use,              -- Always = servers_in_use + 3 ?
  prs.servers_available,
  prc.sum_available,
  prs.servers_highwater,
  ini.parallel_max_servers
from
  px_process_sysstat prs cross join
  px_process         prc cross join
  init_param         ini;
Github repository oracle-patterns, path: /Installed/dynamic-performance-views/px/process_sysstat/in_use-available-highwater.sql

See also

Oracle Dynamic Performance Views

Index