SQL中的視圖


概述

1、視圖(view)在數據庫管理系統中也是一個對象,也是以文件形式存在的。
2、視圖也對應了一個查詢結果,只是從不同的角度查看數據。

創建、刪除、修改視圖

創建視圖
  • 語法結構:
    create view 視圖名稱 as 查詢語句;
  • 例子:從emp表查詢empno、ename、sal,結果當作視圖展示。
CREATE VIEW `myview` AS SELECT
EMPNO,
ENAME,
SAL 
FROM
	emp;

通過視圖對象查看數據:

SELECT
	* 
FROM
	`myview`;

在這里插入圖片描述

修改視圖
  • 語法結構:
    alter view 視圖名稱 as 查詢語句;
  • 示例:將myview視圖修改為deptno、ename、job、sal
ALTER VIEW `myview` AS SELECT
EMPNO,
ENAME,
JOB,
SAL 
FROM
	emp;

查看視圖:

SELECT
	* 
FROM
	`myview`;

在這里插入圖片描述

刪除視圖
  • 語法結構:
    drop view if exists 視圖名稱;
  • 示例:刪除myview視圖
drop view if exists `myview`;

作用

  • 面向視圖查詢,可以提高查詢效率;也可以通過視圖操作原表數據。
  • 例子
    1、單獨執行:
    select e.ename,d.dname from emp e join dept d on e.deptno = d.deptno;
    2、將上面執行結果當作視圖對象創建
    create view myview as select e.ename,d.dname from emp e join dept d on e.deptno = d.deptno;
    3、面向視圖查詢:沒有進行表連接,提高檢索效率。
    select * from myview;
  • 隱藏表的實現細節
    1、
CREATE VIEW `myview` AS SELECT
EMPNO a,
ENAME b,
SAL c
FROM
	emp;
SELECT * FROM myview;

在這里插入圖片描述
2、面向視圖查詢,只知道myview視圖中有a、b、c三個字段,不知道該視圖背后真實表的結構是什么。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM