gpt4 book ai didi

MySQL - InnoDB 索引 varchar 或索引多个 varchars

转载 作者:太空宇宙 更新时间:2023-11-03 11:37:45 28 4
gpt4 key购买 nike

大家好,我计划创建包含 10 列的表,该表应该至少有 10,000,000 行,并且在其中,我将有列 description - VARCHAR(600) 和索引。

所以问题是,在该列上查询 LIKE - VARCHAR(600) 会更快,还是将描述拆分为 100 个字符的 6 列并使用索引对它们进行索引会更快LIKEOR..

例如:description - VARCHAR(600) INDEX

SELECT `id` FROM `table` WHERE `description` LIKE "%something%"

或者将 description 分成 6 列会更快,例如 desc1, desc2,..desc6VARCHAR(100) INDEX - 每个都使用以下查询:

SELECT `id` FROM `table` WHERE `desc1` LIKE "%something%" OR `desc1` LIKE "%something%" OR `desc3` LIKE "%something%" OR `desc4` LIKE "%something%" OR `desc5` LIKE "%something%" OR `desc6` LIKE "%something%"

只是想知道在我开始创建数据库之前..

向大家致以最诚挚的问候!

最佳答案

完全没有区别。 . .嗯,很少。查询必须进行全表扫描,因为 like 模式以通配符 ("%") 开头。

如果您关心性能,您可能应该将问题改写为全文搜索。从 documentation 开始.

关于MySQL - InnoDB 索引 varchar 或索引多个 varchars,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44261816/

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