首页 > 解决方案 > Oracle 的物化视图中的“USING”子句是什么?

问题描述

我遇到了一种创建物化视图的方法(请参阅下面的代码)。有一个 USING 子句实际上与其他参数一起引用另一个表。我无法理解这些参数值在这里做了什么。当我用物化视图搜索 USING 子句时,我没有得到任何答案。请指教。提前致谢。

--creating a main table
CREATE TABLE newuser.sample_table (
    col1   NUMBER,
    col2   NUMBER,
    col3   VARCHAR2(100),
    col4   VARCHAR2(100)
)
SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 0 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
    STORAGE ( INITIAL 81920 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL
    DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT )
TABLESPACE sample_tb;

--creating a another table with view name
CREATE TABLE newuser.mv_sample_table (
    col1   NUMBER,
    col2   NUMBER,
    col3   VARCHAR2(100)
)
SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 0 INITRANS 2 MAXTRANS 255 NOCOMPRESS LOGGING
    STORAGE ( INITIAL 81920 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL
    DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT )
TABLESPACE sample_tb;

--Finally creating a materialized view which is based in the main table but with USING clause referring the table with same name as view name
CREATE MATERIALIZED VIEW newuser.mv_sample_table (
    mcol1,
    mcol2,
    mcol3
) USING (mv_sample_table, (10, 'PGSDWP.PFIZER.COM', 1, 0, 0, newuser, sample_table, '2021-03-03 05:37:18', 0, 4060036, '1950-01-01 12:00:00', '', 1, 'FEDFFE07', 35734841064712, 0, NULL, (1, "col1", "col1", 0, 321, 0)), 2097249, 10,('1950-01-01 12:00:00', 1098, 0, 0, 35734841064712, 0, 2097152, 0, 2, NULL, NULL) )
    REFRESH
    FORCE
    WITH PRIMARY key
AS
    SELECT
        col1,
        col2,
        col3
    FROM
        newuser.sample_table;

我无法理解“USING (mv_sample_table, (10, 'PGSDWP.PFIZER.COM', 1, 0, 0, newuser, sample_table, '2021-03-03 05:37:18', 0, 4060036, ' 1950-01-01 12:00:00', '', 1, 'FEDFFE07', 35734841064712, 0, NULL, (1, "col1", "col1", 0, 321, 0)), 2097249, 10, ('1950-01-01 12:00:00', 1098, 0, 0, 35734841064712, 0, 2097152, 0, 2, NULL, NULL) )"在视图中以及它在做什么

标签: oraclematerialized-views

解决方案


推荐阅读