學習過SQL相關知識小夥伴確定都知道存儲過程、觸發器、視圖等相關知識,不知道的聽也確定聽過,有的小夥伴可能會說,如今開發過程當中都不會去使用這些相關東西了,可是渣渣東在這說一句「有些東西你能夠不用,可是不能不會」;本文主要就是講解視圖是如何建立的以及如何使用,有須要的能夠學習學習哦! sql
視圖是指計算機數據庫中的視圖,是一個虛擬表,其內容由查詢定義。同真實的表同樣,視圖包含一系列帶有名稱的列和行數據。可是,視圖並不在數據庫中以存儲的數據值集形式存在。行和列數據來自由定義視圖的查詢所引用的表,而且在引用視圖時動態生成。數據庫
從用戶角度來看,一個視圖是從一個特定的角度來查看數據庫中的數據。從數據庫系統內部來看,一個視圖是由SELECT語句組成的查詢定義的虛擬表。從數據庫系統內部來看,視圖是由一張或多張表中的數據組成的,從數據庫系統外部來看,視圖就如同一張表同樣。視圖能夠查詢,但不能夠新增、刪除、修改。 視圖是一個虛擬表,其內容由查詢定義。同真實的表同樣,視圖的做用相似於篩選。定義視圖的篩選能夠來自當前或其它數據庫的一個或多個表,或者其它視圖。分佈式查詢也可用於定義使用多個異類源數據的視圖。分佈式
建立視圖:函數
create view 視圖名 as
sql(查詢sql)
;
複製代碼
刪除視圖:學習
drop view 視圖名;
複製代碼
簡單視圖:測試
create view user_view as
select name,phone,address from user;
-- 測試
select * from user_view;
複製代碼
複雜視圖:
create view city_view as
select p.province,c.city,a.area from provinces p
join cities c on c.provinceid = p.provinceid
join areas a on a.cityid = c.cityid;
-- 測試
select * from city_view;
複製代碼
文章到這裏就結束了,本人仍是以爲有些東西咱們雖然暫時用不到,可是咱們仍是要掌握這些相關知識,說不定哪天就遇到了呢! spa
最後,感慨一下,互聯網這個行業愈來愈嚴格了,對於身爲程序猿的咱們來講,應該時刻保持危機感,時刻保持學習,才能不被行業拋棄;學歷不行的小夥伴感受利用閒暇時間提高本身的學歷,雖然能力重要,可是咱們得擁有敲門磚才行。加油,致本身,致你們!