日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql 创建job_MySQL 索引创建

發(fā)布時間:2025/3/20 数据库 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql 创建job_MySQL 索引创建 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

MySQL 索引創(chuàng)建

簡介:在本教程中,您將了解索引以及如何使用MySQL?CREATE INDEX語句向表中添加索引。

電話簿比喻

假設(shè)您有一本電話簿,其中包含城市中所有人的姓名和電話號碼。假設(shè)你想找到Bob Cat的電話號碼。知道這些名稱是按字母順序排列的,首先要查找姓氏為Cat的頁面,然后查找Bob和他的電話號碼。

現(xiàn)在,如果電話簿中的姓名沒有按字母順序排序,則需要瀏覽所有頁面,閱讀其中的每個名稱,直到找到Bob Cat。這稱為順序搜索。您將查看所有條目,直到找到具有您要查找的電話號碼的人員為止。

將電話簿與數(shù)據(jù)庫表相關(guān)聯(lián),如果您有電話簿表并且必須找到Bob Cat的電話號碼,則可以執(zhí)行以下查詢:

SELECT

phone_number

FROM

phone_book

WHERE

first_name = 'Bob' AND

last_name = 'Cat';

這很容易。雖然查詢速度很快,但數(shù)據(jù)庫必須掃描表的所有行,直到找到行為止。如果表有數(shù)百萬行而沒有索引,則數(shù)據(jù)檢索將花費大量時間來返回結(jié)果。

索引簡介

索引是一種數(shù)據(jù)結(jié)構(gòu),例如B-Tree,它以增加額外寫入和存儲為代價來提高表上數(shù)據(jù)檢索的速度。

查詢優(yōu)化器可以使用索引來快速定位數(shù)據(jù),而無需掃描表中給定查詢的每一行。

當(dāng)您使用主鍵或唯一鍵創(chuàng)建表時,MySQL會自動創(chuàng)建一個名為PRIMARY的特殊索引。索引稱為聚簇索引。

PRIMARY索引是特殊的,因為索引本身與數(shù)據(jù)一起存儲在同一個表中。 聚簇索引強制執(zhí)行表中的行順序。

除PRIMARY索引之外的其他索引稱為二級索引或非聚簇索引。

MySQL CREATE INDEX語句

通常,您在創(chuàng)建時為表創(chuàng)建索引。例如,以下語句創(chuàng)建一個新表,其索引由兩列c2和c3組成。

CREATE TABLE t(

c1 INT PRIMARY KEY,

c2 INT NOT NULL,

c3 INT NOT NULL,

c4 VARCHAR(10),

INDEX (c2,c3)

);

要為列或一組列添加索引,請使用以下CREATE INDEX語句:

CREATE INDEX index_name ON table_name (column_list)

要為列或列列表創(chuàng)建索引,請指定索引名稱,索引所屬的表以及列列表。

例如,要為列c4添加新索引,請使用以下語句:

CREATE INDEX idx_c4 ON t(c4);

默認(rèn)情況下,如果未指定索引類型,MySQL將創(chuàng)建B-Tree索引。以下顯示了基于表的存儲引擎的允許索引類型:

存儲引擎

允許的索引類型

InnoDB

BTREE

MyISAM

BTREE

MEMORY / HEAP

HASH,BTREE

請注意,CREATE INDEX上面的CREATE INDEX語句是MySQL引入的語句的簡化版本。我們將在后續(xù)教程中介紹更多選項。

MySQL CREATE INDEX示例

以下聲明查找職位名稱為的員工Sales Rep:

SELECT

employeeNumber,

lastName,

firstName

FROM

employees

WHERE

jobTitle = 'Sales Rep';

這是輸出:

+----------------+-----------+-----------+

| employeeNumber | lastName | firstName |

+----------------+-----------+-----------+

| 1165 | Jennings | Leslie |

| 1166 | Thompson | Leslie |

| 1188 | Firrelli | Julie |

| 1216 | Patterson | Steve |

| 1286 | Tseng | Foon Yue |

| 1323 | Vanauf | George |

| 1337 | Bondur | Loui |

| 1370 | Hernandez | Gerard |

| 1401 | Castillo | Pamela |

| 1501 | Bott | Larry |

| 1504 | Jones | Barry |

| 1611 | Fixter | Andy |

| 1612 | Marsh | Peter |

| 1619 | King | Tom |

| 1621 | Nishi | Mami |

| 1625 | Kato | Yoshimi |

| 1702 | Gerard | Martin |

+----------------+-----------+-----------+

17 rows in set (0.01 sec)

我們有17行,表明17名員工的職位是銷售代表。

要查看MySQL如何在內(nèi)部執(zhí)行此查詢,請在SELECT語句的開頭添加EXPLAIN子句,如下所示:

+----+-------------+-----------+------------+------+---------------+------+---------+------+------+----------+-------------+

| id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | filtered | Extra |

+----+-------------+-----------+------------+------+---------------+------+---------+------+------+----------+-------------+

| 1 | SIMPLE | employees | NULL | ALL | NULL | NULL | NULL | NULL | 23 | 10.00 | Using where |

+----+-------------+-----------+------------+------+---------------+------+---------+------+------+----------+-------------+

1 row in set, 1 warning (0.01 sec)

正如您所看到的,MySQL必須掃描包含23行的整個表,以查找具有Sales Rep職位的員工。

現(xiàn)在,讓我們jobTitle使用以下CREATE INDEX語句為列創(chuàng)建索引 ??:

CREATE INDEX jobTitle ON employees(jobTitle);

并再次執(zhí)行上述語句:

EXPLAIN SELECT

employeeNumber,

lastName,

firstName

FROM

employees

WHERE

jobTitle = 'Sales Rep';

輸出是:

+----+-------------+-----------+------------+------+---------------+------+---------+------+------+----------+-------------+

| id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | filtered | Extra |

+----+-------------+-----------+------------+------+---------------+------+---------+------+------+----------+-------------+

| 1 | SIMPLE | employees | NULL | ALL | jobTitle | NULL | NULL | NULL | 23 | 73.91 | Using where |

+----+-------------+-----------+------------+------+---------------+------+---------+------+------+----------+-------------+

1 row in set, 1 warning (0.00 sec)

正如您所看到的,MySQL只需要從jobTitle鍵列中找到17行, ??而不是掃描整個表。

要顯示表的索引,請使用

SHOW INDEXES FROM employees;

這是輸出:

+-----------+------------+------------+--------------+----------------+-----------+-------------+----------+--------+------+------------+---------+---------------+

| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |

+-----------+------------+------------+--------------+----------------+-----------+-------------+----------+--------+------+------------+---------+---------------+

| employees | 0 | PRIMARY | 1 | employeeNumber | A | 23 | NULL | NULL | | BTREE | | |

| employees | 1 | reportsTo | 1 | reportsTo | A | 7 | NULL | NULL | YES | BTREE | | |

| employees | 1 | officeCode | 1 | officeCode | A | 7 | NULL | NULL | | BTREE | | |

| employees | 1 | jobTitle | 1 | jobTitle | A | 9 | NULL | NULL | | BTREE | | |

+-----------+------------+------------+--------------+----------------+-----------+-------------+----------+--------+------+------------+---------+---------------+

4 rows in set (0.00 sec)

在本教程中,您已經(jīng)了解了MySQL索引以及如何為表中的列添加索引。

《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的mysql 创建job_MySQL 索引创建的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 久久久久久久性 | 中文字幕最新在线 | 日韩国产第一页 | 久久国产精品毛片 | 337p粉嫩大胆噜噜噜噜69影视 | 国产八区 | 国产一级免费片 | 欧美极品少妇xxxxⅹ猛交 | 久久国内免费视频 | 国产精品一区二区三区四区在线观看 | 男女黄色网 | 91看片淫黄大片91桃色 | 草草在线免费视频 | 免费三级黄| 亚洲精品视频免费 | 久久久久久亚洲精品 | 国产有码视频 | 亚洲性一区 | 日本激情视频在线 | 久久国产精品99久久人人澡 | 欧美视频亚洲 | 综合色婷婷 | 天天做夜夜做 | 亚洲青涩在线 | 国产高清二区 | 男人天堂五月天 | 日本一区二区三区在线视频 | 一级片在线免费播放 | 四虎成人在线观看 | 老司机精品福利视频 | 美国伊人网 | 18禁免费无码无遮挡不卡网站 | 国产精品一区二区三区在线免费观看 | 久久com | 在线高清观看免费观看 | 国产精品国产av | 国产亚洲精品自拍 | 桃花色综合影院 | 毛片动漫| 精品人妻少妇嫩草av无码专区 | 自拍欧美亚洲 | 999精品视频在线观看 | 大尺度舌吻呻吟声 | 777片理伦片在线观看 | 成人欧美在线视频 | 欧美日韩一区二 | 国产盗摄一区二区三区在线 | 日韩欧美激情在线 | 日本一区二区人妻 | 日韩丰满少妇无码内射 | 午夜精品福利一区二区蜜股av | 国产女女调教女同 | 日韩精品国产一区二区 | 337p粉嫩大胆色噜噜狠狠图片 | 色老头影视 | 久久综合狠狠综合久久综合88 | 亚洲淫| 波多野结衣亚洲 | 欧美一区二区视频免费观看 | 日日操夜夜骑 | 国产sm调教一区二区 | 最新高清无码专区 | 亚洲精品二区三区 | 超碰在线97国产 | av国产网站| 日韩欧美久久 | 免费日韩在线视频 | 在线国产网站 | 久久久精品在线观看 | caoporn成人| 一级片在线免费观看视频 | 久草五月| 日本乱偷中文字幕 | 天堂网在线观看视频 | 欧美高清x| 国产高清片 | 成人午夜一区二区 | 最近最经典中文mv字幕 | 国产调教一区 | 国产乱淫av | 在线少妇| 五月花成人网 | 外国毛片 | 日韩精品一区二区在线观看 | 日韩一区中文 | 黄网在线免费看 | 国产欧美综合在线 | 黄瓜视频在线观看 | 不卡av在线免费观看 | 狠狠干女人 | 自拍偷拍亚洲视频 | 午夜精品视频在线观看 | 夜夜操综合 | 天堂精品视频 | 欧美成人免费看 | 日韩成人中文字幕 | 欧美日韩国产成人在线 | 小箩莉末发育娇小性色xxxx | 一区二区三区视频观看 |