IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 索引与视图--视图 -> 正文阅读

[大数据]索引与视图--视图

什么是视图
视图与表有很多类似的地方,视图也是由若干个字段以及若干条记录构成,视图也可以作为select语句的数据源
甚至在某些特定条件下,可以通过视图对表进行更新操作
视图中保存的仅仅是一条select语句,视图中的源数据都来自于数据库表,数据库表称为基本表或者基表,视图称为虚表

视图的概念
视图于表不同,视图是一个虚表,即视图所对应的数据不进行实际存储,数据库中只存储视图的定义,对视图的数据进行操作时,系统根据视图的定义去操作于视图相关联的基本表

视图一经定义,就可以像表一样被查询、修改、删除、和更新。

视图的优点
1.为用户集中数据,简化用户的数据查询和处理
2.屏蔽数据库的复杂性
3.简化用户权限的管理
4.便于数据共享
5.可以重新组织数据以便输出到其他应用程序中

创建视图
视图在数据库中是作为一个对象来存储的

语法格式:
CREATE VIEW 视图名 [(视图字段列表)]
AS
SELECT 语句
创建视图v1,查询邮箱种包含w字符的员工名,部门名和工种信息

CREATE OR REPLACE VIEW v1
AS
SELECT last_name,department_id,job_id
FROM employees
WHERE email LIKE '%w%';
SELECT * FROM v1;

创建视图v2,查询各部门的平均工资级别
CREATE OR REPLACE VIEW v2
AS
SELECT AVG(salary) avgsal,department_id
FROM employees
GROUP BY department_id;
SELECT * FROM v2;

SELECT v2.avgsal,grade_level
FROM v2
JOIN job_grades j
ON v2.avgsal BETWEEN lowest_sal AND highest_sal;

通过视图v2,查询平均工资级别最低的部门信息
SELECT * FROM v2 ORDER BY  avgsal  LIMIT  1;

创建视图v3,查询平均工资最低的部门和工资
CREATE OR REPLACE VIEW v3
AS
SELECT *
FROM v2
ORDER BY avgsal LIMIT 1;

SELECT * FROM v3;
创建视图v4,查询电话号码以011开头的员工姓名和工资、邮箱
CREATE OR REPLACE VIEW v4
AS
SELECT last_name,salary,email
FROM employees
WHERE phone_number LIKE '011%';
SELECT * FROM v4;
创建视图v5,查询最高工资高于12000的部门信息及工资
CREATE OR REPLACE VIEW v5
AS
SELECT  max(salary),department_id
FROM employees
GROUP BY department_id DESC
HAVING max(salary)>12000;
SELECT * FROM v5;
创建视图v6,
-- 查询employees表中last_name,salary和邮箱。
-- 通过视图v6向表中插入记录(‘jie’,39999,’jie@edg.com’),
-- 再将jie的last_name修改为‘赵礼杰’,
-- 最后删除employees表中last_name包含w的员工。

CREATE OR REPLACE VIEW v6
AS
SELECT last_name,salary,email
FROM employees;

INSERT INTO v6 VALUES ('jie',39999,'jie@edg.com');

UPDATE v6 
SET last_name='赵礼杰'
WHERE last_name='jie';

SELECT * FROM v6;
更新视图v4,更新后的视图用来查询电话号码515开头的员工。
CREATE OR REPLACE VIEW v4
AS
SELECT last_name,salary,email,phone_number
FROM employees
WHERE phone_number LIKE '515%';

SELECT * FROM v4;

删除视图

删除视图v2。
DROP VIEW v2;
使用DROP VIEW一次可以删除多个视图。例如:
drop view cs_kc,xs_kc_avg;
将删除视图cs_kc和xs_kc_avg
  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-11-10 12:28:04  更:2021-11-10 12:29:42 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 6:03:32-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码