gpt4 book ai didi

sql - MySQL MyISAM 索引文本列

转载 作者:行者123 更新时间:2023-11-30 23:39:34 24 4
gpt4 key购买 nike

我的表上有一个执行缓慢的查询。它有一个 where 子句,例如:

where supplier= 'Microsoft'

列类型是文本。在 phpmyadmin 中,我查看是否可以向表中添加索引,但该选项被禁用。这是否意味着您不能索引文本列?这是否意味着像这样的每个更新查询都在执行全表扫描?

然后最好的办法是将列分离到它自己的表中,并在当前表中放置一个 ID,然后在其上放置一个索引?这可能会加快查询速度吗?

最佳答案

您需要为索引添加前缀长度。看看Column Indexes docs

以下代码在供应商字段的前 50 个字节上创建索引:

mysql> create index supplier_ix on t(supplier(50));
Query OK, 0 rows affected (0.03 sec)
Records: 0 Duplicates: 0 Warnings: 0

但也许您应该重新考虑供应商的数据类型?从名称上看,它听起来不像是典型的文本字段...

关于sql - MySQL MyISAM 索引文本列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4624469/

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