gpt4 book ai didi

mysql - 在mysql中使用INDEXES最大的好处是什么?

转载 作者:IT老高 更新时间:2023-10-29 00:03:00 35 4
gpt4 key购买 nike

我知道我需要设置一个主键,并将任何应该唯一的东西设置为唯一键,但是什么是 INDEX 以及如何使用它们?

有什么好处?优点缺点?我注意到我可以使用或不使用它们,我应该什么时候使用?

最佳答案

简答:
索引加快 SELECT 的速度并减慢 INSERT 的速度。

通常有索引会更好,因为它们加快 select 的速度比减慢 insert 的速度更多。

UPDATE 上,如果在 WHERE 子句中使用索引字段,则索引可以加快速度,如果你更新索引字段之一。

你怎么知道什么时候使用索引

在您的SELECT 语句前添加EXPLAIN
像这样:

EXPLAIN SELECT * FROM table1 
WHERE unindexfield1 > unindexedfield2
ORDER BY unindexedfield3

将向您展示 MySQL 在每个未索引的字段上必须做多少工作。
使用该信息,您可以决定是否值得添加索引。

explain也可以告诉你drop和index是不是更好

EXPLAIN SELECT * FROM table1 
WHERE indexedfield1 > indexedfield2
ORDER BY indexedfield3

如果选择的行很少,或者 MySQL 决定忽略索引(它不时这样做)那么您最好删除索引,因为它会减慢您的insert,但不会加快您的select

那也可能是你的select语句不够聪明。
(对于答案的复杂性,我深表歉意,我试图保持简单,但失败了)。

链接:
MySQL indexes - what are the best practices?

关于mysql - 在mysql中使用INDEXES最大的好处是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5696897/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com