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

MySQL索引操作命令小結(jié)

 更新時(shí)間:2014年12月02日 09:48:39   投稿:junjie  
這篇文章主要介紹了MySQL索引操作命令小結(jié),本文講解了創(chuàng)建索引、查詢索引、刪除索引等內(nèi)容,需要的朋友可以參考下

創(chuàng)建索引

創(chuàng)建索引的語法是:

CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name
  [USING index_type]
  ON tbl_name (index_col_name,...)
 
index_col_name:
  col_name [(length)] [ASC | DESC]

對(duì)于CHAR和VARCHAR列,只用一列的一部分就可創(chuàng)建索引。創(chuàng)建索引時(shí),使用col_name(length)語法,對(duì)前綴編制索引。前綴包括每列值的前l(fā)ength個(gè)字符。BLOB和TEXT列也可以編制索引,但是必須給出前綴長(zhǎng)度。

此處展示的語句用于創(chuàng)建一個(gè)索引,索引使用列名稱的前10個(gè)字符。

CREATE INDEX part_of_name ON customer (name(10));

因?yàn)槎鄶?shù)名稱的前10個(gè)字符通常不同,所以此索引不會(huì)比使用列的全名創(chuàng)建的索引速度慢很多。另外,使用列的一部分創(chuàng)建索引可以使索引文件大大減小,從而節(jié)省了大量的磁盤空間,有可能提高INSERT操作的速度。

前綴最長(zhǎng)為255字節(jié)。對(duì)于MyISAM和InnoDB表,前綴最長(zhǎng)為1000字節(jié)。注意前綴的限長(zhǎng)以字節(jié)計(jì),而CREATE INDEX語句中的前綴長(zhǎng)度指的是字符的數(shù)目。對(duì)于使用多字節(jié)字符集的列,在指定列的前綴長(zhǎng)度時(shí),要考慮這一點(diǎn)。

在MySQL中:

·只有當(dāng)您正在使用MyISAM, InnoDB或BDB表類型時(shí),您可以向有NULL值的列中添加索引。

·只有當(dāng)您正在使用MyISAM, BDB或InnoDB表類型時(shí),您可以向BLOB或TEXT列中添加索引。

一個(gè)index_col_name規(guī)約可以以ASC或DESC為結(jié)尾。這些關(guān)鍵詞將來可以擴(kuò)展,用于指定遞增或遞減索引值存儲(chǔ)。目前,這些關(guān)鍵詞被分析,但是被忽略;索引值均以遞增順序存儲(chǔ)。

部分儲(chǔ)存引擎允許在創(chuàng)建索引時(shí)指定索引類型。index_type指定語句的語法是USING type_name。不同的儲(chǔ)存引擎所支持的type_name值已顯示在下表中。如果列有多個(gè)索引類型,當(dāng)沒有指定index_type時(shí),第一個(gè)類型是默認(rèn)值。

存儲(chǔ)引擎

允許的索引類型

MyISAM

BTREE

InnoDB

BTREE

MEMORY/HEAP

HASH, BTREE

示例:

CREATE TABLE lookup (id INT) ENGINE = MEMORY;
CREATE INDEX id_index USING BTREE ON lookup (id);

TYPE type_name可以作為USING type_name的同義詞,用于指定索引類型。但是,USING是首選的格式。另外,在索引規(guī)約語法中,位于索引類型前面的索引名稱不能使用TYPE。這是因?yàn)?,與USING不同,TYPE不是保留詞,因此會(huì)被認(rèn)為是一個(gè)索引名稱。

如果您指定的索引類型在給定的儲(chǔ)存引擎中不合法,但是有其它的索引類型適合引擎使用,并且不會(huì)影響查詢功能,則引擎應(yīng)使用此類型。

FULLTEXT索引只能對(duì)CHAR, VARCHAR和TEXT列編制索引,并且只能在MyISAM表中編制。

SPATIAL索引只能對(duì)空間列編制索引,并且只能在MyISAM表中編制。

使用alter的方法創(chuàng)建索引

alter table table_name add index index_name (column_list) ;
alter table table_name add unique (column_list) ;
alter table table_name add primary key (column_list) ;

查詢索引

SHOW INDEX FROM table_name;

刪除索引

drop index index_name on table_name ;
alter table table_name drop index index_name ;
alter table table_name drop primary key ;

其中,在前面的兩條語句中,都刪除了table_name中的索引index_name。而在最后一條語句中,只在刪除PRIMARY KEY索引中使用,因?yàn)橐粋€(gè)表只可能有一個(gè)PRIMARY KEY索引,因此不需要指定索引名。

相關(guān)文章

  • 利用Shell腳本實(shí)現(xiàn)遠(yuǎn)程MySQL自動(dòng)查詢

    利用Shell腳本實(shí)現(xiàn)遠(yuǎn)程MySQL自動(dòng)查詢

    本篇文章是對(duì)利用Shell腳本實(shí)現(xiàn)遠(yuǎn)程MySQL自動(dòng)查詢的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • MySQL查詢條件中in會(huì)用到索引嗎

    MySQL查詢條件中in會(huì)用到索引嗎

    這篇文章主要給大家介紹了MySQL查詢條件中in會(huì)不會(huì)用到索引的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用MySQL具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • MySQL添加索引特點(diǎn)及優(yōu)化問題

    MySQL添加索引特點(diǎn)及優(yōu)化問題

    這篇文章主要介紹了MySQL添加索引特點(diǎn)及優(yōu)化問題,MySQL索引的建立對(duì)于MySQL的高效運(yùn)行是很重要的,索引可以大大提高M(jìn)ySQL的檢索速度,感興趣的小伙伴可以參考一下
    2022-07-07
  • MySQL數(shù)據(jù)庫(kù)基于sysbench實(shí)現(xiàn)OLTP基準(zhǔn)測(cè)試

    MySQL數(shù)據(jù)庫(kù)基于sysbench實(shí)現(xiàn)OLTP基準(zhǔn)測(cè)試

    這篇文章主要介紹了MySQL數(shù)據(jù)庫(kù)基于sysbench實(shí)現(xiàn)OLTP基準(zhǔn)測(cè)試,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-11-11
  • mysql添加索引方法詳解(Navicat可視化加索引與sql語句加索引)

    mysql添加索引方法詳解(Navicat可視化加索引與sql語句加索引)

    索引用來快速地尋找那些具有特定值的記錄,如果沒有索引,執(zhí)行查詢時(shí)MySQL必須從第一個(gè)記錄開始掃描整個(gè)表的所有記錄,直至找到符合要求的記錄,表里面的記錄數(shù)量越多,代價(jià)就越高,下面這篇文章主要給大家介紹了關(guān)于mysql添加索引的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • MySQL查詢進(jìn)階操作從函數(shù)到表連接的使用

    MySQL查詢進(jìn)階操作從函數(shù)到表連接的使用

    這篇文章主要介紹了MySQL查詢進(jìn)階從函數(shù)到表連接的使用,包括mysql函數(shù)的使用,MySQL的分組分頁(yè)及查詢關(guān)鍵字的執(zhí)行順序,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • 關(guān)于mysql的時(shí)區(qū)問題

    關(guān)于mysql的時(shí)區(qū)問題

    這篇文章主要介紹了關(guān)于mysql的時(shí)區(qū)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家,
    2023-11-11
  • 避免MySQL中的隱式轉(zhuǎn)換的方法小結(jié)

    避免MySQL中的隱式轉(zhuǎn)換的方法小結(jié)

    在 MySQL 中,隱式轉(zhuǎn)換可能導(dǎo)致索引失效、結(jié)果不符合預(yù)期或性能問題,以下是避免隱式轉(zhuǎn)換的具體方法,從表設(shè)計(jì)、查詢編寫到配置優(yōu)化,逐步減少隱式轉(zhuǎn)換的發(fā)生,具體操作過程跟隨小編一起看看吧
    2025-04-04
  • MySQL 實(shí)現(xiàn)lastInfdexOf的功能案例

    MySQL 實(shí)現(xiàn)lastInfdexOf的功能案例

    這篇文章主要介紹了MySQL 實(shí)現(xiàn)lastInfdexOf的功能案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • MySQL中ROUND函數(shù)進(jìn)行四舍五入操作陷阱分析

    MySQL中ROUND函數(shù)進(jìn)行四舍五入操作陷阱分析

    這篇文章主要介紹了MySQL中ROUND函數(shù)進(jìn)行四舍五入操作陷阱,結(jié)合實(shí)例形式分析了mysql使用ROUND函數(shù)進(jìn)行四舍五入運(yùn)算中出現(xiàn)的問題及其錯(cuò)誤原因,需要的朋友可以參考下
    2018-06-06

最新評(píng)論

海南省| 井研县| 东山县| 古田县| 凌源市| 开化县| 皮山县| 贵定县| 南雄市| 高陵县| 鹿邑县| 二连浩特市| 盐边县| 绥芬河市| 马边| 西乡县| 白玉县| 咸丰县| 黔西| 乡城县| 万州区| 扎鲁特旗| 德惠市| 哈尔滨市| 呼图壁县| 子长县| 垣曲县| 武邑县| 石门县| 上饶县| 沙河市| 沙田区| 台中市| 开江县| 金华市| 安多县| 金湖县| 巩留县| 永清县| 淳化县| 兴业县|