讓我們首先看看什么是復合索引 –
復合索引是在多個列上使用的索引。
也稱為多列索引。
MySQL 允許用戶創建復合索引,該索引最多可以包含16 列。
查詢優化器使用復合索引進行查詢,這將測試索引中的所有列。
它也可用于測試第一列、前兩列等的查詢。
如果在索引定義中以正確的順序指定了列,可以使用單個復合索引來加速同一表上某些類型的查詢。
讓我們看看如何在創建復合索引的過程中創建復合索引一張桌子。可以使用以下語句來完成 –
查詢
CREATE TABLE table_name ( c1 data_type PRIMARY KEY, c2 data_type, c3 data_type, c4 data_type, INDEX index_name (c2,c3,c4) );
登錄后復制
在上面的語句中,復合索引由三列 c2、c3 和 c4 組成。
還可以使用“CREATE INDEX”語句將復合索引添加到現有表中。讓我們看看如何做到這一點 –
查詢
CREATE INDEX index_name ON table_name(c2,c3,c4);
登錄后復制
讓我們看看如何使用復合索引快速進行 sloq 查詢 –
查詢執行的速度取決于其持續時間。
使用索引提示可以提高查詢速度。
MySQL 優化器可用于在選擇索引時做出正確的決定。
但這只能在靜態查詢上完成。
如果在“WHERE”子句更改的位置添加查詢,查詢的性能將會惡化,因為它不會讓優化器完成其工作。
“FORCE INDEX”語句的作用類似于“USE INDEX (index_list)”,在另外,表掃描被認為是一項昂貴的任務。
僅當無法使用命名索引來查找表中的行時才需要進行表掃描。
以上就是使用 MySQL 中的復合索引使慢速查詢變得更快的詳細內容,更多請關注www.92cms.cn其它相關文章!