MySQL是一種流行的關系型數據庫管理系統,具有多種索引類型。其中包含了普通索引(Index)和全文索引(Full-Text Index)兩種類型索引。
普通索引:它是一種基于二叉查找樹實現的索引,用于提高查詢效率。當我們在查詢某一列時,MySQL會先判斷該列是否建立了普通索引,若有則利用它進行快速匹配查詢數據。在建立一個普通索引時,需要使用create index語句。
CREATE INDEX index_name ON table_name(column_list);其中,index_name是索引名稱,table_name是要建立索引的表名,column_list則是需要創建索引的列名稱。同時,也可以在建表時指定默認的索引類型。若不指定,默認為B-Tree索引。 普通索引適用于Where和Order By語句的查詢,但不適用于模糊查詢。模糊查詢的話需要使用全文索引。
全文索引:與普通索引不同,全文索引可以對一段文本內的單詞進行索引,使用戶快速查找相關的數據。例如:數據庫中有一個名為resume的列,若用戶需要搜索關于Java方面的字眼,那么可以這么寫SQL語句:
SELECT column_list FROM table_name WHERE MATCH(column_name) AGAINST ('search_string');其中,column_list是列表,table_name是表名,column_name是列名,search_string是需要搜索的字符串。需要注意的是,全文索引默認只對InnoDB和MyISAM存儲引擎起作用,同時只對在其長度限制內的詞進行索引。全文索引適用于關鍵詞搜索,但不能用于字符串趨勢查詢。全文索引在創建之前,需要進行一些額外的配置設置。比如,需要設置innodb_ft_cache_size、innodb_ft_max_token_size、innodb_ft_min_token_size等參數值。關于全文索引的創建可以使用下面的語句進行:
ALTER TABLE table_name ADD FULLTEXT index_name(column_name_list);
上一篇mysql存儲小文件大小
下一篇css網頁制作簡歷