如果每个MYSQL字段中都有一个;其中;子句-有索引吗?

如果每个MYSQL字段中都有一个;其中;子句-有索引吗?,mysql,sql,Mysql,Sql,我想知道是否应该将索引添加到表中的各个字段,而已知这些字段将用于“SELECT…WHERE[field]=…”查询 例如,假设我有一个“user”表,其中包含以下字段: id(primary), userName, firstName, lastName 假设我将有一个类似“SELECT*FROMuserWHERE userName='someUser123';”的查询,那么是否应该在userName列中添加索引 在我有数千条记录的情况下,如果存在索引,这个查询会更快吗?一般来说,是的,如果

我想知道是否应该将索引添加到表中的各个字段,而已知这些字段将用于“SELECT…WHERE[field]=…”查询

例如,假设我有一个“user”表,其中包含以下字段:

 id(primary), userName, firstName, lastName
假设我将有一个类似“SELECT*FROM
user
WHERE userName='someUser123';”的查询,那么是否应该在
userName
列中添加索引


在我有数千条记录的情况下,如果存在索引,这个查询会更快吗?

一般来说,是的,如果有索引,搜索列会更快

想想电话簿。如果我让你查找每个姓“史密斯”的人,这很快,因为你可以假设这本书是按姓氏排序的,所有的“史密斯”都在一起,并按字母顺序排列

这就是索引如何工作的基本思想。它们被分类了,正因为如此,搜索可以更快地完成

你应该索引每一列吗?这是一个更复杂的问题

你可能会喜欢我的演讲


还有我展示它的视频:

对不起,我误读了你的标题,我以为你想把每一个专栏都编入索引,不管它是什么。“一本电话簿”?好几年没见过了谢谢你的回答。我还看到你写了一本关于SQL的书:D@P.Salmon呵呵,不过他们还是存在的。