MySQL 中 BINARY LIKE 操作的索引

2023-11-30

我知道varchar_pattern_opsPostgresql 中存在用于快速、基于索引的搜索LIKE查询,但是MySQL有类似的功能吗?

我目前有一个 Django-MySQL 设置,其中有一个在非索引字段上运行的查询,并带有一个BINARY LIKE操作,需要一分多钟才能完成。

我的查询是从文本开头进行部分搜索 -text%.

这是表结构。该表实际上包含 20 多个字段,但我只包含主键和我正在搜索的字段

+---------+---------------+------+-----+---------+-------+

| Field   | Type          | Null | Key | Default | Extra |

+-------------------------+---------------+------+-----+--

| id      | varchar(255)  | NO   | PRI | NULL    |       |

| mid     | varchar(255)  | NO   | MUL | NULL    |       |

这是查询 -

select count(*) from table where mid binary like 'text%';

这些是索引 -

PRIMARY KEY index has cardinality 102820460
mid index has cardinality 756032

MySQL 对字符串的左侧进行索引。

如果查询使用通配符右侧,则字符串列可以使用索引:

 SELECT * FROM your_table WHERE field LIKE "text%" # can use an index

但请记住,索引的长度限制为 767 字节

来自 Mysql 文档

B 树索引可用于表达式中的列比较: 使用 =、>、>=、

https://dev.mysql.com/doc/refman/8.0/en/index-btree-hash.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL 中 BINARY LIKE 操作的索引 的相关文章

随机推荐

  • Android:如何在活动(不是片段)之间滑动,主/细节最佳设置

    我正在开发一个 Android 应用程序 我对这一切都相当陌生 包括移动应用程序开发 所以我有几个问题 任何帮助都会很棒 1 是否可以在整个活动 包括操作栏 之间滑动 我的意思不是像 viewPager 在片段之间交换 我的意思是交换 整个
  • Azure 上的 Angular 2 应用程序读取应用程序设置

    我想使用 VSTS CI CD 将 Angular 2 应用程序部署到不同的 Web 应用程序插槽 例如开发 登台和生产 每个槽应该指向不同的 Web api 通常情况下 人们会在应用程序中指定三个不同的环境文件 但缺点是我必须使用不同的环
  • Angular2将类添加到body标签

    我怎样才能添加一个class to the body标签而不做body作为应用程序选择器并使用主机绑定 我尝试使用渲染器 但它改变了整个身体 Angular 2 x 在 body 标签上绑定类 我正在开发一个大型 angular2 应用程序
  • powershell调用restmethod多部分/表单数据

    我目前正在尝试使用 REST API 将文件上传到网络服务器 正如前面提到的 我正在使用 PowerShell 来实现此目的 使用curl 这没有问题 调用看起来像这样 curl H Auth token AUTH TOKEN H Cont
  • Kubernetes ConfigMap挂载单个文件而不是目录

    在 Kubernetes 中是否可以将 ConfigMap 中的文件挂载到已有其他文件的目录中 例如 基础镜像文件系统 app main main py test py ConfigMap 包含一个文件 Mounted py 该文件应与 m
  • 使用列值作为列名 mysql

    我正在尝试获取 5 公里半径内的所有用户 这是我的表结构 id location 1 26 851791 75 781810 2 26 860729 75 7633127 3 34 057811 84 239125 我编写一个查询来根据以下
  • 如何围绕 3D 轴 (Y) 旋转 2D UIElement?

    我有一个Grid对于一些内容 图像 文本 我想在 3D 空间中围绕 y 轴旋转它 某种动画倾斜效果 有没有像Rotate3DTransform这样的简单方法直接适用于Grid 使用 Viewport3D 如果您愿意使用 3D 模型和旋转 那
  • 从 EF 6.0 Beta 升级到 RC 后出现 System.MissingMethodException

    这是什么意思 用户代码未处理 System MissingMethodExceptionHResult 2146233069 消息 未找到方法 System Data Entity ModelConfiguration Configurat
  • 如何避免Fragment重玩?

    我有2个Fragments F1 and F2 我打开第一个Fragment F1来自Activity使用以下代码 MyFragment f1 new MyFragment Bundle bundle new Bundle bundle p
  • C/C++ 结构打包不起作用

    我正在尝试在 64 bit 32 位 Windows 上使用 g 来打包一个结构 struct Foo uint8 t a uint32 t b attribute packed int main int argc char argv qD
  • Prolog 多米诺骨牌游戏

    我正在序言中制作一个游戏 使用一组给定的多米诺骨牌碎片 它应该使用初始集合中的所有碎片制作正确的多米诺骨牌行 我们必须使用一个推理系统 在其中我们必须构建初始状态和最终状态 如下所示 initial dominos 1 4 2 3 4 2
  • 如何处理SIGSEGV、Segmentation failure。使用 Avx2 时

    如何处理SIGSEGV Segmentation failure 使用 Avx2 时 mm256 load pd mm256 store pd solved mm256 load pd 我在调用时收到了分段错误 mm256 load pd
  • Delphi 从哪里获取 BDSCOMMONDIR 的值?

    我的一个系统有一个损坏的 Delphi 安装 它认为BDSCOMMONDIR指着C Windows system32 9 0而在一个正常运行的系统上 它指向C Users Public Documents RAD Studio 9 0 我可
  • NSMutableArray alloc init 与 NSMutableArray 数组

    有什么区别 NSMutableArray alloc init and NSMutableArray array Here in NSMutableArray array 你不必释放array它将自动释放 如果你会写 NSMutableAr
  • 批量执行 for 和 start 命令以实现并行和顺序工作

    我有一个 8 核 CPU 和 8GB RAM 我正在创建一个批处理文件来自动执行 7 zip CLI 用尽大多数参数和变量来压缩同一组文件 最终目标是找到最强的参数组合和导致尽可能最小的存档大小的变量 这本质上是非常耗时的 尤其是当要处理的
  • 奇怪的行为三元运算符[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 来自 C 的我必须用 PHP 做一个项目 我正在使用这
  • 顺利更新谷歌地图上的标记位置

    我正在开发订单追踪模块在android应用程序中 在这个模块中 我实现了一个源位置标记和目的地位置标记 源位置是固定的 目标位置标记是不断变化的 每当位置改变时 但是当位置改变时 标记从一个位置跳到另一个位置 移动不顺畅 实际上我正在删除上
  • 是否可以从该函数中删除递归?

    我已经玩了一段时间了 只是看不到明显的解决方案 我想从 XinY Go 函数中删除递归 def XinY Go x y index slots if y index 1 slots index x print slots slots ind
  • JFrame 过渡效果 - 当调用 setState(Frame.ICONIFIED) 时,它只是转到任务栏而没有动画

    我现在有一个问题 当我打电话时frame setState Frame ICONIFIED 使用我的自定义按钮 我没有使用默认的 JFrame 最小化按钮 JFrame 设置为setUndecorated true JFrame 只是转到任
  • MySQL 中 BINARY LIKE 操作的索引

    我知道varchar pattern opsPostgresql 中存在用于快速 基于索引的搜索LIKE查询 但是MySQL有类似的功能吗 我目前有一个 Django MySQL 设置 其中有一个在非索引字段上运行的查询 并带有一个BINA