大家好我打算创建一个包含10列的表,它应该至少有10,000,000行,而在其中,我会有列description - VARCHAR(600)
和索引。
所以问题是,在该列上查询LIKE
是否更快 - VARCHAR(600),或者将描述拆分为6列中的100个字符并将其编入{{1 }和LIKE
..
例如:OR
description - VARCHAR(600) INDEX
或者将SELECT `id` FROM `table` WHERE `description` LIKE "%something%"
拆分为description
,desc1
,... desc2
等desc6
的速度会更快} - 每个人并使用以下查询:
VARCHAR(100) INDEX
在我开始创建数据库之前想知道..
致以最诚挚的问候,感谢大家!
答案 0 :(得分:3)
完全没有区别。 。 。好吧,很少。查询将不得不进行全表扫描,因为like
模式以通配符开头("%")。
如果您关心性能,则应该将问题重新解释为全文搜索。从documentation开始。
答案 1 :(得分:0)
如果您必须使用LIKE '%something%'
(即LIKE
带有前导通配符),那么
LIKEs
,加上ORs
)另外,你会对something
恰好分布在两个块上做些什么?