MySQL資料庫 索引

2021-10-25 06:55:44 字數 2241 閱讀 7465

說白了就是有索引之前查詢資料是遍歷,新增索引後就變成了定位。

特點

作用:避免同乙個表中某資料列中的值重複

與主鍵索引的區別

使用語法

create

table

'表名'

('欄位名'

int(11)

auto_increment primarykey,

'欄位名'

varchar(32

)not

null

unique

-- 或 unique key `欄位名` (`欄位名`)

)

作用: 快速定位特定資料

注意:

使用語法

-- 建立表時新增

create

table 表名(

--建立語句

index

|key 索引名(欄位名,欄位名,..

.);)

-- 建立表後新增

alter

table 表名 add

index 索引名(欄位名,..

.);

作用: 快速定位特定資料

注意:

測試或使用全文索引時,要先看一下自己的 mysql 版本、儲存引擎和資料型別是否支援全文索引。

使用語法(全部索引)

#方法一:建立表時

create

table 表名 (

欄位名1 資料型別 [完整性約束條件…]

, 欄位名2 資料型別 [完整性約束條件…],[

unique

| fulltext | spatial ]

index

|key

[索引名]

(欄位名[

(長度)][

asc|

desc])

);#方法二:create在已存在的表上建立索引

create

[unique

| fulltext | spatial ]

index 索引名

on 表名 (欄位名[

(長度)][

asc|

desc])

;#方法三:alter table在已存在的表上建立索引

alter

table 表名 add

[unique

| fulltext | spatial ]

index

索引名 (欄位名[

(長度)][

asc|

desc])

;#刪除索引:

drop

index 索引名 on 表名字;

#刪除主鍵索引:

alter

table 表名 drop

primary

key;

#顯示索引資訊:

show

index

from student;

/*增加全文索引*/

alter

table

`school`

.`student`

add fulltext index

`studentname`

(`studentname`);

/*explain : 分析sql語句執行效能*/

explain

select

*from student where studentno=

'1000'

;/*使用全文索引*/

-- 全文搜尋通過 match() 函式完成。

-- 搜尋字串作為 against() 的引數被給定。搜尋以忽略字母大小寫的方式執行。對於表中的每個記錄行,match() 返回乙個相關性值。即,在搜尋字串與記錄行在 match() 列表中指定的列的文字之間的相似性尺度。

explain

select

*from student where

match

(studentname) against(

'love'

);

資料庫mysql索引 資料庫 mysql索引

mysql 索引 mysql索引的建立對於mysql的高效執行是很重要的,索引可以大大提高mysql的檢索速度。打個比方,如果合理的設計且使用索引的mysql是一輛蘭博基尼的話,那麼沒有設計和使用索引的mysql就是乙個人力三輪車。索引分單列索引和組合索引。單列索引,即乙個索引只包含單個列,乙個表可...

mysql更新索引庫 Mysql資料庫索引增刪改查

一.索引的作用 一般的應用系統,讀寫比例在10 1左右,而且插入操作和一般的更新操作很少出現效能問題,遇到最多的,也是最容易出問題的,還是一些複雜的查詢操作,所以查詢語句的優化顯然是重中之重。在資料量和訪問量不大的情況下,mysql訪問是非常快的,是否加索引對訪問影響不大。但是當資料量和訪問量劇增的...

MySQL資料庫索引

mysql資料庫索引 目錄 1 myisam與innodb的區別 2 索引的優缺點 3 如何選用索引 4 檢視索引 5 雜湊索引 6 b 樹 7 索引分類 1 myisam與innodb的區別 1 show engines 圖1.1 截圖1 a mysql資料表主要支援如圖所示的儲存引擎,分為 事務...