最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL視圖和索引專篇精講

 更新時間:2022年03月08日 17:07:09   作者:桃花鍵神  
這篇文章主要介紹了MySQL的視圖和索引用法與區(qū)別詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

數據庫版本:mysql8。0.27

如果以下代碼執(zhí)行有問題歡迎一起探討

視圖View

什么是視圖?

視圖是一個虛擬表,是sql語句的查詢結果,其內容由查詢定義。同真實的表一樣,視圖包含一系列帶有名稱的列和行數據,在使用視圖時動態(tài)生成。視圖的數據變化會影響到基表,基表的數據變化也會影響到視圖[insertupdate delete ] ; 創(chuàng)建視圖需要create view 權限,并且對于查詢涉及的列有select權限;使用create or replace 或者 alter修改視圖,那么還需要改視圖的drop權限。

代碼實現(xiàn):

學生成績表

建立視圖

-- v_a是視圖名  
create view v_a as 
select id,name,score,dept from s1;

查詢視圖

-- 查詢視圖v_a
select*FROM v_a;

-- 查詢視圖時可以增加條件
select*FROM v_a where id=4;

-- 查詢數據庫中的全部視圖
select `TABLE_NAME` from `INFORMATION_SCHEMA`.`TABLES` where `TABLE_SCHEMA` = 'test' and `TABLE_TYPE` = 'view';

刪除視圖

drop view v_a

索引index

  • MySQL索引的建立對于MySQL的高效運行是很重要的,索引可以大大提高MySQL的檢索速度。
  • 打個比方,如果合理的設計且使用索引的MySQL是一輛蘭博基尼的話,那么沒有設計和使用索引的MySQL就是一個人力三輪車。
  • 拿漢語字典的目錄頁(索引)打比方,我們可以按拼音、筆畫、偏旁部首等排序的目錄(索引)快速查找到需要的字。
  • 索引分單列索引和組合索引。單列索引,即一個索引只包含單個列,一個表可以有多個單列索引,但這不是組合索引。組合索引,即一個索引包含多個列。
  • 創(chuàng)建索引時,你需要確保該索引是應用在 SQL 查詢語句的條件(一般作為 WHERE 子句的條 件)。
  • 實際上,索引也是一張表,該表保存了主鍵與索引字段,并指向實體表的記錄。
  • 上面都在說使用索引的好處,但過多的使用索引將會造成濫用。因此索引也會有它的缺點:雖然索引大大提高了查詢速度,同時卻會降低更新表的速度,如對表進行INSERT、UPDATE和DELETE。因為更新表時,MySQL不僅要保存數據,還要保存一下索引文件。
  • 建立索引會占用磁盤空間的索引文件。

建立索引

創(chuàng)建表時建立

-- 第一種方式
create table t1 (
t varchar(20),
KEY(t desc)
)
-- 第二種方式
create table t1 (
t varchar(20),
index aa(t(20))
)

修改表時建立索引

-- 該語句添加一個主鍵,這意 味著索引值必須是唯一的,且不能為NULL。
ALTER TABLE tbl_name ADD PRIMARY KEY (column_list);
 --  這條語句創(chuàng)建索引的 值必須是唯一的(除了NULL外,NULL可能會出現(xiàn)多次)。
 ALTER TABLE tbl_name ADD UNIQUE index_name (column_list);
  -- 添加普通索引,索引 值可出現(xiàn)多次。
  ALTER TABLE tbl_name ADD INDEX index_name (column_list);
   -- 該語句指定了索引 為 FULLTEXT ,用于全文索引。
   ALTER TABLE tbl_name ADD FULLTEXT index_name (column_list);

刪除索引

drop index t on t;

到此這篇關于MySQL視圖和索引專篇精講的文章就介紹到這了,更多相關MySQL視圖和索引內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Linux下MySQL5.7.18二進制包安裝教程(無默認配置文件my_default.cnf)

    Linux下MySQL5.7.18二進制包安裝教程(無默認配置文件my_default.cnf)

    這篇文章主要介紹了Linux下MySQL5.7.18二進制包安裝教程(無默認配置文件my_default.cnf) ,需要的朋友可以參考下
    2017-05-05
  • 一文帶你理解慢SQL分析與優(yōu)化

    一文帶你理解慢SQL分析與優(yōu)化

    從系統(tǒng)設計角度看,一個系統(tǒng)從設計搭建到數據逐步增長,SQL執(zhí)行效率可能會出現(xiàn)劣化,為繼續(xù)支撐業(yè)務發(fā)展,我們需要對慢SQL進行分析和優(yōu)化,下面這篇文章主要給大家介紹了關于慢SQL分析與優(yōu)化的相關資料,需要的朋友可以參考下
    2022-08-08
  • MySQL中on?duplicate?key?update的使用方法實例

    MySQL中on?duplicate?key?update的使用方法實例

    在做數據統(tǒng)計的時候,我們經常會用到mysql的on duplicate key update語法來自動更新數據,下面這篇文章主要給大家介紹了關于MySQL中on?duplicate?key?update的使用方法的相關資料,需要的朋友可以參考下
    2022-09-09
  • MySQL基本運維命令詳解

    MySQL基本運維命令詳解

    這篇文章主要介紹了MySQL基本運維命令,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-01-01
  • MySQL修改默認引擎和字符集詳情

    MySQL修改默認引擎和字符集詳情

    這篇文章小編主要介紹的是MySQL修改默認引擎和字符集的相關資料,需要的小伙伴請參考下面文章的具體內容,希望能否幫助到您
    2021-09-09
  • Windows10下mysql 8.0.12 解壓版安裝圖文教程

    Windows10下mysql 8.0.12 解壓版安裝圖文教程

    這篇文章主要為大家詳細介紹了Windows10下mysql 8.0.12 解壓版安裝圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • MySql中深度分頁的問題處理

    MySql中深度分頁的問題處理

    這篇文章主要介紹了MySql中深度分頁的問題處理,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • 詳解 Mysql中的delimiter定義及作用

    詳解 Mysql中的delimiter定義及作用

    delimiter是mysql分隔符,在mysql客戶端中分隔符默認是分號(;)。如果一次輸入的語句較多,并且語句中間有分號,這時需要新指定一個特殊的分隔符。這篇文章給大家介紹了Mysql中的delimiter的作用,感興趣的朋友一起看看吧
    2018-09-09
  • MySQL數據庫INNODB表損壞修復處理過程分享

    MySQL數據庫INNODB表損壞修復處理過程分享

    突然收到MySQL報警,從庫的數據庫掛了,一直在不停的重啟,打開錯誤日志,發(fā)現(xiàn)有張表壞了。innodb表損壞不能通過repair table 等修復myisam的命令操作?,F(xiàn)在記錄下解決過程
    2013-08-08
  • 解決MySQL批量新增或修改時出現(xiàn)異常:Lock?wait?timeout?exceeded

    解決MySQL批量新增或修改時出現(xiàn)異常:Lock?wait?timeout?exceeded

    這篇文章主要給大家介紹了關于如何解決MySQL批量新增或修改時出現(xiàn)異常:Lock?wait?timeout?exceeded;try?restarting?transaction的相關資料,需要的朋友可以參考下
    2024-01-01

最新評論

新绛县| 靖江市| 五原县| 安龙县| 江油市| 营山县| 司法| 天镇县| 遂昌县| 玉树县| 凤凰县| 时尚| 辉县市| 大足县| 岳西县| 神池县| 来凤县| 大余县| 平塘县| 金昌市| 营山县| 渝北区| 自治县| 盐亭县| 拉萨市| 黄大仙区| 万州区| 康乐县| 建瓯市| 建湖县| 当雄县| 阿合奇县| 海南省| 河间市| 博爱县| 泽库县| 徐汇区| 赤峰市| 博野县| 万安县| 陇西县|