gpt4 book ai didi

mysql - sql 查询 LIKE % on Index

转载 作者:行者123 更新时间:2023-11-29 00:35:01 24 4
gpt4 key购买 nike

我正在使用 mysql 数据库。我的网站被切割成不同的元素(项目 12 的 PRJ_12、任务 14 的 TSK_14、文档 18 的 DOC_18 等)。我们目前将对这些元素的引用作为 VARCHAR 存储在我们的数据库中。关系列已编入索引,因此可以更快地进行选择。

我们正在考虑将这些列分为 2 列(在“element_type”列上有 PRJ,一个“element_id”列上有 12)。我们正在考虑这个解决方案,因为我们做了很多包含 LIKE ...% 的请求(例如检索一个用户的所有任务,无论任务的 ID 是什么)。但是,将这些列一分为二会增加索引列的数量。

所以,我有两个问题:

  1. 索引列中的 LIKE ...% 请求是否真的比简单的 where 查询(没有 like)慢。我知道如果该列未编入索引,则不建议执行 where ... LIKE % 请求,但我真的不知道索引是如何工作的)。
  2. 我们将引用列一分为二的事实将使索引表的数量加倍。这是个问题吗?

谢谢,

最佳答案

1) 点赞总是比完全比较(使用 = )成本更高,但是这一切都归结为字段数据类型和记录数(除非我们谈论的是您不应该拥有的巨大表格问题)

2) 多列索引不是问题,是的,它会使索引变大,但那又怎样?数据类型和总行数很重要,但这正是索引的作用。

那就去吧

关于mysql - sql 查询 LIKE % on Index,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14755948/

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