Mysql之視圖

定義

Mysql從5.0.1版本開始提供視圖功能。一種虛擬存在的表,行和列的數據來自定義視圖的查詢中使用的表,並且是在使用視圖時動態生成的,只保存了sql邏輯,不保存查詢結果

視圖和表的對比

        創建語法關鍵字       是否實際佔用物理空間       使用(針對數據而言)

視圖      create view          只保存了sql邏輯       增刪改查(一般不使用)


表        create table         保存了數據            增刪改查

例如:查詢姓張的學生名和專業名

select stuname,majorname from stuinfo s inner join major m on s.majorid=m.id where s.stuname like '張%' //要連接查詢

create view v1 as select stuname,majorname from stuinfo s inner join major m on s.majorid=m.id // 創建視圖

select from v1 where stuname where stuname like '張%' // 查詢視圖

新建視圖

CREATE VIEW v1 AS SELECT
    last_name,
    department_name
FROM
    employees
JOIN departments ON employees.department_id = departments.department_id

// 查詢姓名和對應的部門名
select * from v1

修改視圖

  1. 方式一
create or replace view 視圖名 as 查詢語句;
  1. 方式二
alter view 視圖名 as 查詢語句

刪除視圖

drop view v1,v2,v3

查看視圖

desc v1;
或
show create view v1;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章