1 结论
2 详解
-- 所有 动态视图相关的 表和视图
-- X$ 的 type 是 table, V_$、V$、GV_$、GV$ 都是 view
select * from v$fixed_table ft;
-- 定义
select fvd.*, substr(fvd.view_definition, -50, 50) substr_view_definition
from v$fixed_view_definition fvd
where fvd.view_name in ('V$FIXED_TABLE', 'GV$FIXED_TABLE')
order by fvd.view_name desc;
-- 同义词
select ds.*
from dba_synonyms ds
where ds.table_name like '%FIXED_TABLE%';
-- N:第 N 个实例
select userenv('Instance') from dual;
定义,查询截图:
同义词,查询截图:
3 扩展
3.1 Oracle 官方文档
3.2 思考:哪个列可以区分 V$ 和 GV$
答案:INST_ID
分析:V$ = select *
from GV$
where inst_id = USERENV('Instance');
字段差异如图: