我TEXT
在MySQL数据库中有一个列.该应用程序就像一个博客,col包含"帖子"的主体.我将在此列上进行大量复杂的布尔搜索.
MySQL文档说你需要为InnoDB表设置最大长度为767字节的TEXT列的索引长度.
我应该把它设置为最大长度吗?让它低于那个更好吗?
Mar*_*rkR 18
这取决于你将拥有什么.
我怀疑你的问题是你在想象列上的索引可以执行它不能做的事情.常规索引不是全文索引,不能用于查找单词或除前缀之外的任何子字符串匹配.数据库索引仅用于查找精确值或一系列值 - 它们不能执行任意匹配.
假设你要使用索引来做它可以做的事情,那么长度应该是最短的长度,让你有足够的特异性,你可以找到你想要的行而不会读取太多的行.这需要多长时间取决于表的内容,例如,如果您的表有许多具有相同前缀的行,则索引需要比相似的前缀长,以避免将它们放入相同的索引条目 - 这意味着它们都需要被搜查.
归档时间: |
|
查看次数: |
9000 次 |
最近记录: |