首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查询优化显示mysql中的表中不存在键

问查询优化显示mysql中的表中不存在键
EN

Stack Overflow用户
提问于 2021-05-20 17:57:13
回答 1查看 164关注 0票数 0

我正在进行查询优化。我已经运行了explain命令,后面跟着我的查询,很少会显示与解释查询优化相关的记录。它显示的是“possible_keys”和“Extra”字段名。我已经搜索过‘使用可能的键的强制索引’,我已经知道我可以在我试图优化的查询中使用关键字'Use (index_list)‘。

,我怀疑,用哪种类型的索引名代替“index_list”,我的意思是,我是否应该使用列名和我在查询中使用过的别名,或者,我是否应该使用表创建时创建的查询中使用的相应表的索引名。

我已经给出了表的索引名,然后它显示了下面的错误:

代码语言:javascript
复制
ERROR 1176 (42000): Key 'index_name' doesn't exist in table 'ecs'

任何查询优化的提示/建议也欢迎。任何帮助都将不胜感激!谢谢。

EN

回答 1

Stack Overflow用户

发布于 2021-05-20 18:22:06

当使用像use index(<name...>)或force index(<name...>)这样的索引提示时,必须使用索引名。

不要使用列名或列别名。

可以使用以下语句之一在表中定义哪些索引:

代码语言:javascript
复制
mysql> SHOW INDEXES IN ecs;

mysql> SHOW CREATE TABLE ecs\G

索引和键通常是MySQL的同义词,因此索引可以被称为键。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67625662

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档