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