PG操作物化视图

54 阅读1分钟

建表

CREATE TABLE employees (
    employee_id SERIAL PRIMARY KEY,
    first_name VARCHAR(50),
    last_name VARCHAR(50),
    department_id INT,
    salary NUMERIC(10, 2)
);

插数据

INSERT INTO employees (first_name, last_name, department_id, salary)
VALUES 
('John', 'Doe', 10, 5000.00),
('Jane', 'Smith', 20, 6000.00),
('Alice', 'Johnson', 10, 5500.00),
('Bob', 'Brown', 30, 7000.00);

建物化视图

CREATE MATERIALIZED VIEW emp_mv AS
SELECT employee_id, first_name, last_name, department_id, salary
FROM employees
WHERE department_id = 10;

刷新视图

REFRESH MATERIALIZED VIEW emp_mv;