mysql多表查询视图_mysql多表查询并创建视图
匿名用戶
1級
2016-12-03 回答
MySQL在多個數(shù)據(jù)表上創(chuàng)建視圖
在MySQL中,使用CREATE VIEW語句也可以在兩個或兩個以上的數(shù)據(jù)表上創(chuàng)建視圖。
實例
在department表和worker表上創(chuàng)建一個名為worker_view1的視圖。
1. 創(chuàng)建視圖的代碼如下:
CREATE ALGORITHM=MERGE VIEW
worker_view1(name,department,sex,age,location)
AS SELECT name,department.d_name,sex,birthday,address
FROM worker,department WHERE worker.d_id=department.d_id
WITH LOCAL CHECK OPTION;
在DOS提示符窗口中查看MySQL在多個數(shù)據(jù)表上創(chuàng)建視圖的操作效果。如下圖所示:
在DOS提示符窗口中查看MySQL在多個數(shù)據(jù)表上創(chuàng)建視圖的操作效果
從上圖中可以看出,代碼的執(zhí)行結果顯示視圖創(chuàng)建成功。
2. 使用DESC語句查詢虛擬表的結構。如下圖所示:
使用DESC語句查詢虛擬表的結構
從上圖中可以看出,視圖worker_view1的屬性分別為name、department、sex、age和location。
視圖指定的屬性列表對應著兩個不同的表的屬性列(字段)。
視圖的屬性名與屬性列表中的屬性名相同。
該實例中的SELECT語句查詢出了department表的d_name字段,還有worker表的name、sex、birthday和address。其中,department表的d_name字段對應視圖的department字段;worker表的birthday字段對應視圖的age字段。
同時,視圖worker_view1的ALGORITHM的值指定為MERGE。還增加了WITH LOCAL CHECK OPTION約束。
本示例說明,視圖可以將多個表上的操作簡潔的表示出來。
提示
同時在多個表上創(chuàng)建視圖是非常有用的。比如,系統(tǒng)中有student表、department表、score表和grade表,分別存儲學生的信息、院系信息、課程信息和成績信息。可以在這4個表上創(chuàng)建一個視圖,用來顯示學生姓名、學號、班級、院系、所選課程和課程成績。
追問:
能針對性點嘛?
總結
以上是生活随笔為你收集整理的mysql多表查询视图_mysql多表查询并创建视图的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Windows Phone能否第三极崛起
- 下一篇: 如何才能更好发挥WinRunner,实现