1. 程式人生 > 資料庫 >MySQL檢視原理與基本操作示例

MySQL檢視原理與基本操作示例

本文例項講述了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資料庫計有所幫助。