當我們在使用資料庫,有些table的欄位可能非常的多
而臨時我們在搜尋時只需要對某幾個欄位作運算
或是當我需要關聯不同的table作很多次搜尋時
每做一次搜尋就作一次join是非常浪費資源的事情
因此mysql有提供一個view的功能可以將join後的那張暫存table存起來
當你偶爾需要作一些統計、報表之類的事情,又不希望另外再開一張表來儲存你要的資料
建立一個view就是一種能節省資源,也不會破壞整個資料庫的資料結構的方式
這張view tables也會同時與原始的資料同步,讓我們在搜尋的時候會更加便利,節省資源
舉例 table_A有 ID ,A_1, A_2, A_3 , table_B也有 ID,B_1, B_2, B_3
我要查詢的時候要把兩張表用ID連結在一起作成一個臨時的表C
其中包含表A的A_1,A_2以及表B的B_1
create view table_C as select table_A.A_1, table_A.A_2, table_B.B1 from table_A left join table_B on table_A.ID = table_B.ID
這樣就可以建立一個包含兩張表各自欄位的暫時用的表,但是實際上你可以針對這張表作一些update
但是insert, delete 是不行的
而臨時我們在搜尋時只需要對某幾個欄位作運算
或是當我需要關聯不同的table作很多次搜尋時
每做一次搜尋就作一次join是非常浪費資源的事情
因此mysql有提供一個view的功能可以將join後的那張暫存table存起來
當你偶爾需要作一些統計、報表之類的事情,又不希望另外再開一張表來儲存你要的資料
建立一個view就是一種能節省資源,也不會破壞整個資料庫的資料結構的方式
這張view tables也會同時與原始的資料同步,讓我們在搜尋的時候會更加便利,節省資源
舉例 table_A有 ID ,A_1, A_2, A_3 , table_B也有 ID,B_1, B_2, B_3
我要查詢的時候要把兩張表用ID連結在一起作成一個臨時的表C
其中包含表A的A_1,A_2以及表B的B_1
create view table_C as select table_A.A_1, table_A.A_2, table_B.B1 from table_A left join table_B on table_A.ID = table_B.ID
這樣就可以建立一個包含兩張表各自欄位的暫時用的表,但是實際上你可以針對這張表作一些update
但是insert, delete 是不行的