MySQL檢視原理與基本操作示例
阿新 • • 發佈:2020-01-09
本文例項講述了MySQL檢視原理與基本操作。分享給大家供大家參考,具體如下:
概述
檢視是一個虛擬表,其內容由查詢定義。同真實的表一樣,檢視包含一系列帶有名稱的列和行資料。但是檢視並不在資料庫中以儲存的資料值集形式存在。行和列資料來自由定義檢視的查詢所引用的表,並在引用檢視時動態生成。
對其中所引用的基礎表來說,檢視的作用類似於篩選。
基本操作
建立檢視
CREATE VIEW view_test(qty,price,total) AS SELECT quantity,quantity*price FROM t;
多表檢視
CREATE VIEW stu_class(id,name,glass) AS SELECT student.s_id,student.name,stu_info.glass FROM student,stu_info WHERE student.s_id = stu_info.s_id;
檢視檢視
DESCRIBE 檢視名
DESC 檢視名
檢視檢視基本資訊
SHOW TABLE STATUS LIKE '檢視名';
檢視檢視的建表資訊
SHOWCREATE VIEW 檢視名
在VIEW表中檢視檢視詳細資訊
在mysql的information_schema資料庫下的views表中儲存了所有的檢視定義,可以用select
檢視
select * from information_schema.views;
修改檢視
REPLACE語句
CREATE OR REPLACE VIEW view_test AS SELECT * FROM t;
ALTER語句
ALTER VIEW view_test SELECT name FROM t;
刪除檢視
DROP VIEW IF EXISTS stu_glass
建表語句示例
/*獲取系統組織結構 *包括使用者名稱稱、使用者ID、所屬店面名稱、所屬店面ID、建立時間... */ CREATE VIEW organizationTableView as select id,storename,regdate from v9_qd_account;
/*獲取當天的Cpz安裝資料(按使用者分組彙總) *包括使用者ID、Cpz彙總值... */ CREATE VIEW TodayCpzTableView as select storeid,count(id)as total,sum(tui_num)as tui_num from v9_qd_dev where days = DATE_FORMAT(NOW(),'%Y%m%d') group by storeid;
/*獲取當月每天的Cpz安裝資料(按天、使用者分組彙總) *包括日期(天)、使用者ID、Cpz彙總值、CpzApp彙總值、重複Cpz彙總值... */ CREATE VIEW HistoryCurrentMonthDayView as select storeid,sum(tui_num)as tui_num,days from v9_qd_dev where days > DATE_FORMAT(NOW(),'%Y%m') group by storeid,days;
/*獲取每月的Cpz安裝資料(按月、使用者分組彙總) *包括日期(天)、使用者ID、Cpz彙總值、CpzApp彙總值、重複Cpz彙總值... */ CREATE VIEW HistoryMonthTableView as select storeid,DATE_FORMAT(FROM_UNIXTIME(installdate),'%Y%m') as months from v9_qd_dev group by storeid,months;
/*根據輸入的IMEI獲取Cpz安裝資料() *包括IMEI、賬戶ID、店面ID、安裝時間、是否重複安裝、安裝app個數、手機型號 */ CREATE VIEW QueryCpzDatumByIMEI as select storeid,verify,tui_num,sn,idfa,imei,devms,installdate from v9_qd_dev;
//今天 DATE_FORMAT(NOW(),'%Y%m%d');
更多關於MySQL相關內容感興趣的讀者可檢視本站專題:《MySQL查詢技巧大全》、《MySQL事務操作技巧彙總》、《MySQL儲存過程技巧大全》、《MySQL資料庫鎖相關技巧彙總》及《MySQL常用函式大彙總》
希望本文所述對大家MySQL資料庫計有所幫助。