1. 程式人生 > >MySQL的檢視與索引

MySQL的檢視與索引

MySQL檢視

什麼是檢視?

檢視是一個虛擬表,內容由查詢定義。
檢視中只存放了檢視的定義,而沒有存放檢視中的資料,這些資料存放在原來的表中。

檢視的特點:

  • 檢視的列可以來自不同的表,是表的抽象和在邏輯意義上建立的新關係。
  • 檢視是由基本表(實表)長生的表(虛表)。
  • 檢視的建立和刪除不影響基本表。
  • 對檢視內容的更新(新增、刪除、修改)直接影響基本表。
  • 當檢視來自多個基本表時,不允許新增和刪除資料。

    建立檢視語法:

 CREATE VIEW 檢視名 AS 查詢語句

檢視名不能和表名以及其他檢視名重合。

MySQL索引

索引的特點:
索引類似於書的目錄,能夠在一定程度上快速的進行資料定位。
索引的建立有利有弊,建立索引可以提高查詢速度,但過多的建立索引則會佔據許多的磁碟空間。

以下情況適合建立索引:

  • 經常被查詢的欄位,即在WHERE子句中出現的欄位。
  • 在分組的欄位,即在GROUP BY子句中出現的欄位。
  • 存在依賴關係的子表和父表之間的聯合查詢,即主鍵和外來鍵欄位。
  • 設定唯一完整性約束的欄位。

以下情況不適合建立欄位:

  • 在查詢中很少使用的欄位。
  • 擁有許多重複值的欄位。

1.普通索引

  • 建立表時建立索引
 CREATE TABLE 表名(
    欄位  資料型別,
    欄位  資料型別,
    INDEX  索引名(欄位 ) 
);
  • 在已存在的表上建立普通索引
CREATE INDEX 索引名 ON 表名(欄位)

2.唯一索引

  • 建立表時建立索引
 CREATE TABLE 表名(
    欄位  資料型別,
    欄位  資料型別,
    UNIQUE INDEX  索引名(欄位 ) 
);
  • 在已存在的表上建立普通索引
CREATE UNIQUE INDEX 索引名 ON 表名(欄位)

3.全文索引

  • 建立表時建立索引
 CREATE TABLE 表名(
    欄位  資料型別,
    欄位  資料型別,
    FULLTEXT INDEX  索引名(欄位 ) 
);
  • 在已存在的表上建立普通索引
CREATE FULLTEXT INDEX 索引名 ON 表名(欄位)

4.多列索引

  • 建立表時建立索引
 CREATE TABLE 表名(
    欄位  資料型別,
    欄位  資料型別,
    INDEX  索引名(欄位),索引名(欄位).. 
);
  • 在已存在的表上建立普通索引
CREATE INDEX 索引名 
ON 表名(欄位),
表名(欄位),
表名(欄位),

相關推薦

MySQL檢視索引

MySQL檢視 什麼是檢視? 檢視是一個虛擬表,內容由查詢定義。 檢視中只存放了檢視的定義,而沒有存放檢視中的資料,這些資料存放在原來的表中。 檢視的特點: 檢視的列可以來自不同的表,是表的抽象和在邏輯意義上建立的新關係。 檢視是由基本表(實表)長生

SQL(3)--檢視索引

介紹資料修改的SQL語句以及檢視與索引。 資料修改 三種修改方式: 修改某一個元組的值 /* 將學生201215121的年齡改為22歲 */ UPDATE Student SET Sage=22 WHERE Sno=' 201215121 ';

oracle檢視索引

實驗目的:    1、理解索引和點陣圖索引的基本概念    2、掌握索引和點陣圖索引的建立方法,並使用索引對查詢過程產生的影響進行分析    3、理解檢視的基本概念    4、掌握檢視的建立

mysql檢視資料庫索引語句

SELECT    COLUMN_NAME 列名,    COLUMN_TYPE 資料型別,      DATA_TYPE 欄位型別,    CHARACTER_MAXIMUM_LENGTH 長度,    IS_NULLABLE 是否為空,    COLUMN_DEFAULT

2020重新出發,MySql基礎,MySql檢視&索引&儲存過程&觸發器

@[toc] # 檢視是什麼 **檢視在資料庫中的作用類似於窗戶,使用者可以通過這個視窗看到只對自己有用的資料。既保障了資料的安全性,又大大提高了查詢效率**。 **MySQL 檢視(View)是一種虛擬存在的表,同真實表一樣,檢視也由列和行構成,但檢視並不實際存在於資料庫中**。行和列的資料來自於定義檢

MySQL中使用索引不使用索引的區別

pan 並發 並發數 table def ring primary innodb zab 為了回答索引對數據庫性能的影響,做了一次簡單的實驗。 測試環境    MySQL 5.7.10 innodb 100萬隨機數據 表結構 CREATE TABLE `

Mysql索引有關的樹的概念

數據結構 二叉平衡樹 查找樹 最小 左右 因子 排序 子節點 指針 1.簡單地認識下與索引有關的數據結構: 樹的簡單概念:由n個節點組成具有層次關系的集合,根朝上葉朝下 樹的特點:每個節點有0或多個子節點,無父節點稱為根節點,每個非根節點有且只有一個父節點,每個節點可

MySQL高級知識-查詢索引優化分析

tid block list 線程 無法 情況 pri mark 查詢 性能下降SQL慢、執行時間長、等待時間長 查詢語句寫的爛索引失效單值索引復合索引關聯查詢太多join(設計缺陷或不得已的需求,除非你能幹的過你的產品經理)服務器調優及各個參數設置(緩沖、線程數等)常見通

MySQL主鍵索引的區別和聯系

效率 mysql 數據庫管理 但是 sql 多個 ron 主鍵 相同 關系數據庫依賴於主鍵,它是數據庫物理模式的基石。主鍵在物理層面上只有兩個用途: 惟一地標識一行。 作為一個可以被外鍵有效引用的對象。 索引是一種特殊的文件(InnoDB數據表上的索引是表空間的一個組成部分

淺談MySQL的B樹索引索引優化

成本 情況 但是 數據行 eat bst tree bfs 優化 前言 MySQL的MyISAM、InnoDB引擎默認均使用B+樹索引(查詢時都顯示為“BTREE”),本文討論兩個問題: 為什麽MySQL等主流數據庫選擇B+樹的索引結構? 如何基於索引結構,理解常見的MyS

mysql學習提高4:mysql的兩種儲存引擎的索引儲存機制

目錄 概要  MyISAM索引實現 InnoDB索引實現 總結 概要  Mysql的BTree索引使用的是B數中的B+Tree,但對於主要的兩種儲存引擎的實現方式是不同的。 MyISAM索引實現 MyISAM引擎使用B+Tree作為索引結構,葉節點的data域存放

mysql學習提高3:mysql索引

目錄 索引 B Tree 原理 索引分類 B+Tree 索引 雜湊索引 全文索引 空間資料索引(R-Tree) 索引的特點 索引的優點 索引的缺點 索引失效 在什麼情況下適合建立索引 為什麼用B+樹做索引而不用B-樹或紅黑樹 聯合索引 什麼

阿里P8架構師談:MySQL資料庫的索引原理、慢SQL優化的5大原則

MySQL憑藉著出色的效能、低廉的成本、豐富的資源,已經成為絕大多數網際網路公司的首選關係型資料庫。雖然效能出色,但所謂“好馬配好鞍”,如何能夠更好的使用它,已經成為開發工程師的必修課,我們經常會從職位描述上看到諸如“精通MySQL”、“SQL語句優化”、“瞭解資料庫原理”等要求。 我們知道一般

Mysql基礎教程-Mysql的字符集檢視修改

Show variables like “%char%”修改mysql的字符集----資料庫級1)臨時的修改Set global character-set_server=utf82)永久修改Alter database commany set utf8 collate utf8_general_ci; -

Mysql的字符集檢視修改

Show variables like “%char%” 修改mysql的字符集 ----資料庫級 1)臨時的修改 Set global character-set_server=utf8 2)永久修改 Alter database commany set utf8 collate utf8

MySQL檢視修改資料庫編碼

MySQL之檢視與修改資料庫編碼 Windows下修改mysql資料庫編碼 (1)管理員身份進入cmd,輸入:mysql -h伺服器地址 -u使用者名稱 -p密碼 ,最後按回車就行 2. 輸入show variables like ‘%character%’;

MySQL 事務、檢視索引

一、檢視 1.1 為什麼使用檢視?    安全——不希望使用者看到整個資料庫的結構,所以對不同許可權的使用者使用不同的檢視隱藏必要資料;  方便——讓使用者更容易獲得、理解資料; 1.2 什麼是檢視?  檢視是一種檢視資料庫中一個或多個表中資料的方法,是儲

檢視索引、儲存過程簡述優缺點

1.檢視 (1).什麼是檢視? 檢視(View)作為一種資料庫物件,為使用者提供了一個可以檢索資料表中的資料方式。使用者通過檢視來瀏覽資料表中感興趣的部分或全部資料,而資料的物理儲存位置仍然在表中。 檢視是一個虛擬表,並不代表任何物理資料,只是用來檢視資料的視窗而已。檢視並不是以一組資料的形式儲存在

mysql檢視無法利用原表字段中索引的問題

日落之前(beforesunset)凌雪擦掉冰山表面的積雪一劍劈在厚厚的冰層之上我頓時醒悟不由暗暗讚歎凌雪實在太聰明瞭她是要在冰山一角上鑿出一個容身之地然後自主創造刷怪的天然條件來日落之前(beforesunset)凌雪擦掉冰山表面的積雪一劍劈在厚厚的冰層之上我頓時醒悟不由暗

mysql 檢視,事務,儲存過程的簡要說明

1.1 檢視 根據SQL語句獲取動態的資料集,併為其命名 # CREATE VIEW 檢視名稱 AS SQL語句 # create view t1 as select * from teacher; # 建立的檢視有自己的表結構,並且如果對檢視的資料進行更改的話,相當