为了账号安全,请及时绑定邮箱和手机立即绑定
首页 手记 openGauss数据库基础--视图

openGauss数据库基础--视图

2022.11.16 20:26 520浏览

视图

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

语法格式

  • 创建视图

    ""CREATE [ TEMP | TEMPORARY ] VIEW view_name [ ( column_name [, ...] ) ]     AS query;
  • 删除视图

    ""DROP VIEW  view_name ;

参数说明

  • TEMP | TEMPORARY

    创建临时视图。

  • view_name

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

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

  • column_name

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

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

  • query

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

示例

表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
更多内容请参考:


点击查看更多内容
0人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
手记
粉丝
0
获赞与收藏
1

关注TA,一起探索更多经验知识

同主题相似文章浏览排行榜

风间影月说签约讲师

51篇手记,涉及Java、MySQL、Redis、Spring等方向

进入讨论

Tony Bai 说签约讲师

151篇手记,涉及Go、C、Java、Python等方向

进入讨论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消