SQL38 针对actor表创建视图actor_name_view

1. 题目

  • 题目来源:SQL38 针对actor表创建视图actor_name_view

  • 题目描述
    针对actor表创建视图actor_name_view,只包含first_name以及last_name两列,并对这两列重新命名,first_name为first_name_v,last_name修改为last_name_v:

  • 表格

    CREATE TABLE  actor  (
       actor_id  smallint(5)  NOT NULL PRIMARY KEY,
       first_name  varchar(45) NOT NULL,
       last_name  varchar(45) NOT NULL,
       last_update datetime NOT NULL);
    

    后台会插入2条数据:
    insert into actor values (‘1’, ‘PENELOPE’, ‘GUINESS’, ‘2006-02-15 12:34:33’), (‘2’, ‘NICK’, ‘WAHLBERG’, ‘2006-02-15 12:34:33’);
    然后打印视图名字和插入的数据

  • 所需结果
    示例:

    输入:
    
    drop table if exists actor;
    CREATE TABLE  actor  (
       actor_id  smallint(5)  NOT NULL PRIMARY KEY,
       first_name  varchar(45) NOT NULL,
       last_name  varchar(45) NOT NULL,
       last_update datetime NOT NULL);
    insert into actor values ('1', 'PENELOPE', 'GUINESS', '2006-02-15 12:34:33'), ('2', 'NICK', 'WAHLBERG', '2006-02-15 12:34:33');
    
    输出:
    
    ['first_name_v', 'last_name_v']
    PENELOPE|GUINESS
    NICK|WAHLBERG
    

2. 题解

题解:

CREATE VIEW actor_name_view (first_name, last_name) AS 
SELECT first_name first_name_v,
       last_name last_name_v
FROM actor;

3. 反思:创建视图

1、创建视图

sql CREATE VIEW v
AS SELECT clause;

注:若部分字段,则使用 v(c1, c2, ...),相应SELECT c1, c2,..

2、视图作用

  • 隐藏了底层的表结构(假加强了安全性)
  • 简化了数据访问操作(简化用户操作)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值