MySQL高級七——視圖的使用

1、視圖的使用條件

如果某個查詢結果出現的非常頻繁,就是要經常拿這個查詢結果來做子查詢,使用視圖會更加方便。

2、使用視圖的好處

a、簡化查詢語句

b、可以進行權限控制

把表的權限封閉,但是開放相應的視圖權限,視圖里只開放部分數據列。

c、大數據表分表的時候,比如某張表的數據有100萬條,那么可以將這張表分成四個視圖。

按照對id取余計算

3、創建視圖

create?or?replace?view?v_test?as?select?*?from?user;

加上OR REPLACE表示該語句還能替換已有的視圖

4、調取視圖

select?*?from?v_test;

5、修改視圖

alter?view?v_test?as?select?*?from?user1;

6、刪除視圖

drop?view?if?exists?v_test;

7、查看視圖

show?tables;

視圖放在information_schema數據庫下的views表里

8、查看視圖的定義

show?table?status?from?companys?like?'v_test';

9、視圖的算法——存在兩種執行的算法

a、Merge:合并的執行方式,每當執行的時候,先將我們的視圖的sql語句與外部查詢視圖的sql語句,混合在一起,最終執行。

b、Temptable:臨時表模式,每當查詢的時候,將視圖所使用的select語句生成一個結果的臨時表,再在當當前臨時表內進行查詢。

?以上就是MySQL高級七——視圖的使用的內容,更多相關內容請關注PHP中文網(www.php.cn)!

? 版權聲明
THE END
喜歡就支持一下吧
點贊6 分享