对 LONGTEXT 列建立索引

nic*_*ick 5 mysql index database-design

我想使用以下方法为LONGTEXT列设置索引:

CREATE INDEX post_meta ON wp_postmeta (meta_value(8));
Run Code Online (Sandbox Code Playgroud)

目前相关表中有约 100 万行。

问题:

  1. 创建此索引是否会以任何方式影响数据,例如删除前导 0 或类似的内容?
  2. 有什么理由不这样做吗?有许多行的内容大于 8 个字符,但我经常查询8 个或更少的条目类型。

neo*_*neo 2

  1. 创建索引不会影响内容

  2. TEXT 上的索引没有用,因为它只索引前几个字符。大多数具有 LIKE '%word%' 等条件的查询无法从索引中受益。请改用带有查询“MATCH (column) AGAINST ('keyword')”的 FULLTEXT 索引。