openGauss学习笔记33 openGauss 高级数据管理视图

2023年 9月 27日 32.1k 0

openGauss学习笔记-33 openGauss 高级数据管理-视图33.1 语法格式33.2 参数说明33.3 示例

openGauss学习笔记-33 openGauss 高级数据管理-视图

视图与基本表不同,是一个虚拟的表。数据库中仅存放视图的定义,而不存放视图对应的数据,这些数据仍存放在原来的基本表中。若基本表中的数据发生变化,从视图中查询出的数据也随之改变。从这个意义上讲,视图就像一个窗口,透过它可以看到数据库中用户感兴趣的数据及变化。

33.1 语法格式

  • 创建视图

    CREATE [ TEMP | TEMPORARY ] VIEW view_name [ ( column_name [, ...] ) ]
        AS query;

  • 删除视图

    DROP VIEW view_name ;

33.2 参数说明

  • TEMP | TEMPORARY

    创建临时视图。

  • view_name

    要创建的视图名称。可以用模式修饰。

    取值范围:字符串,符合标识符命名规范。

  • column_name

    可选的名称列表,用作视图的字段名。如果没有给出,字段名取自查询中的字段名。

    取值范围:字符串,符合标识符命名规范。

  • query

    为视图提供行和列的SELECT或VALUES语句。

33.3 示例

表customer_t1 ,数据内容如下:

openGauss=# SELECT * FROM customer_t1;
c_customer_sk | c_customer_id | c_first_name | c_last_name | amount
---------------+---------------+--------------+-------------+--------
         3869 | hello         | Grace        |             |   1000
         3869 |               | Grace        |             |
         3869 | hello         |              |             |
         6985 | maps          | Joes         |             |   2200
         9976 | world         | James        |             |   5000
         4421 | Admin         | Local        |             |   3000
(6 rows)

从customer_t1表创建视图,视图只从customer_t1表中选取几列:

openGauss=# CREATE VIEW CUSTOMER_VIEW AS SELECT c_first_name, amount FROM customer_t1;
CREATE VIEW

可以查询CUSTOMER_VIEW,与查询表的方式类似。

openGauss=# SELECT * FROM CUSTOMER_VIEW;

得到结果如下:

c_first_name | amount
--------------+--------
Grace        |   1000
Grace        |
             |
Joes         |   2200
James        |   5000
Local        |   3000
(6 rows)

使用完成后,可以删除视图释放空间。

openGauss=# DROP VIEW CUSTOMER_VIEW;
DROP VIEW

👍 点赞,你的认可是我创作的动力!

⭐️ 收藏,你的青睐是我努力的方向!

✏️ 评论,你的意见是我进步的财富!

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论