真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

MYSQL中視圖如何使用

MySQL中視圖如何使用?這個問題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家?guī)淼膮⒖純?nèi)容,讓我們一起來看看吧!

創(chuàng)新互聯(lián)成立以來不斷整合自身及行業(yè)資源、不斷突破觀念以使企業(yè)策略得到完善和成熟,建立了一套“以技術(shù)為基點(diǎn),以客戶需求中心、市場為導(dǎo)向”的快速反應(yīng)體系。對公司的主營項(xiàng)目,如中高端企業(yè)網(wǎng)站企劃 / 設(shè)計、行業(yè) / 企業(yè)門戶設(shè)計推廣、行業(yè)門戶平臺運(yùn)營、成都app軟件開發(fā)、手機(jī)網(wǎng)站制作設(shè)計、微信網(wǎng)站制作、軟件開發(fā)、托管服務(wù)器等實(shí)行標(biāo)準(zhǔn)化操作,讓客戶可以直觀的預(yù)知到從創(chuàng)新互聯(lián)可以獲得的服務(wù)效果。

1、什么是視圖

執(zhí)行一條SQL,將結(jié)果集保存在一張?zhí)摂M表中

(相關(guān)推薦:MySQL教程)

2、為什么要使用視圖

  1. 重復(fù)利用SQL語句

  2. 簡化SQL查詢,快速取數(shù)據(jù)

  3. 只用知道表的部分結(jié)構(gòu)

  4. 保護(hù)數(shù)據(jù),根據(jù)特定授權(quán)

  5. 更改數(shù)據(jù)格式和表示,視圖可返回與底層表的表示和格式不同的數(shù)據(jù)。

注意事項(xiàng)
? 在視圖創(chuàng)建后,可以用與表基本相同的方式使用(查詢、過濾、排序數(shù)據(jù)、與其他視圖或連結(jié)、(添加、更新))
? 視圖只是用來查看存儲在別處的數(shù)據(jù)的設(shè)施,本身不包含數(shù)據(jù),返回的數(shù)據(jù)也是從其他表檢索出來的。
? 因?yàn)橐晥D本身不包含數(shù)據(jù),索引多個表連結(jié)或嵌套可能存在性能問題,需測試

3、規(guī)則和限制

  1. 表名必須唯一(與其他視圖和表)

  2. 創(chuàng)建視圖沒有限制

  3. 足夠權(quán)限

  4. 視圖可以嵌套,可以從其他視圖查詢來構(gòu)造一個視圖

  5. 如果視圖和從視圖中查詢都有order by,視圖中的order by將被覆蓋

  6. 視圖不能索引

  7. 視圖可以和表一起使用

4、使用視圖

  1. 創(chuàng)建視圖 create view

  2. 查看創(chuàng)建視圖的語句。Show create view viewname

  3. 刪除視圖 drop view viewname

  4. 更新視圖,1?? 先drop后create 2?? 直接用create or replace view

  5. 利用視圖簡化復(fù)雜的聯(lián)結(jié)查詢

5、利用視圖簡化復(fù)雜的聯(lián)結(jié)查詢

創(chuàng)建視圖

CREATE VIEW productcustomers AS
SELECT cust_name, cust_contact, prod_id
FROM customers, orders, orderitems
WHERE customers.cust_id = orders.cust_id
AND   orderitems.order_num = orders.order_num

使用視圖

SELECT cust_name, cust_contact
FROM productcustomers
WHERE prod_id = 'TNT2';

6、用視圖重新格式化檢索出的數(shù)據(jù)

select concat (rtrim(vend_name) , '(',rtrim(vend_country),')') as vend_title   from vendors order by vend_name;

如果經(jīng)常用到這個格式的話,可以創(chuàng)建一個視圖

CREATE VIEW vendorlocations AS
SELECT
    concat ( rtrim( vend_name ), '(', rtrim( vend_country ), ')' ) AS vend_title 
FROM
    vendors 
ORDER BY
    vend_name;

可以直接通過視圖查詢得出結(jié)果

SELECT * FROM vendorlocations;

7、用視圖過濾不想要的數(shù)據(jù)

create view custmeremaillist AS
SELECT cust_id ,cust_name,cust_email
from customers
where cust_email is not NULL;

直接使用視圖

SELECT * from custmeremaillist ;

8、使用視圖與計算字段

mysql查詢

SELECT
    prod_id,
    quantity,
    item_price,
    quantity * item_price AS expanded_price 
FROM
    orderitems
WHERE order_num=20005;

創(chuàng)建視圖

CREATE VIEW orderitemsexpanded AS
SELECT
    order_num,
    prod_id,
    quantity,
    item_price,
    quantity * item_price AS expanded_price 
FROM
    orderitems
WHERE order_num=20005;

使用視圖

SELECT
    *
FROM
    orderitemsexpanded
WHERE order_num=20005;

9、更新視圖

通常,視圖是可以更新的(insert、update、delete)。更新視圖將更新基表。如果視圖中有以下定義將不能被更新。

1. 分組(group by 和 having)
2. 聯(lián)結(jié)
3. 自查詢
4. 并
5. 聚合函數(shù)(min()、count()、sum()等)
6. Distinct
7. 導(dǎo)出(計算)列

所以視圖最好直接使用select查詢。

感謝各位的閱讀!看完上述內(nèi)容,你們對MYSQL中視圖如何使用大概了解了嗎?希望文章內(nèi)容對大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


分享文章:MYSQL中視圖如何使用
文章出自:http://weahome.cn/article/jscjog.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部