首頁  >  文章  >  資料庫  >  使用 MySQL 中的複合索引使慢速查詢變得更快

使用 MySQL 中的複合索引使慢速查詢變得更快

WBOY
WBOY轉載
2023-09-10 19:29:02765瀏覽

使用 MySQL 中的复合索引使慢速查询变得更快

讓我們先看看什麼是複合索引 -

  • 複合索引是在多個欄位上使用的索引。

  • 也稱為多列索引。

  • 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 中的複合索引使慢速查詢變得更快的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除