首页 > 数据库 >MySQL_索引失效_类型转换

MySQL_索引失效_类型转换

时间:2024-11-29 11:00:17浏览次数:6  
标签:类型转换 索引 str MySQL 失效 col

1.类型转换索引失效场景

SELECT * FROM tbl_name WHERE str_col=1;

列str_col上有建立索引,一个字符串类型的列给一个整数类型的值。

问题:为什么会导致索引失效?

原因:

    MySQL官方文档解释:The reason for this is that there are many different strings that may convert to the value 1, such as '1'' 1', or '1a'.
就是说有多个字符串可以转换成整型的值1。也就是说可以转换成1的值太多了,那MySQL怎么知道用那个值去匹配这个列的值尼,所以,如果这样写会导致索引失效。



参考文档连接:https://dev.mysql.com/doc/refman/8.0/en/type-conversion.html

 

   

标签:类型转换,索引,str,MySQL,失效,col
From: https://www.cnblogs.com/zzwb/p/18576100

相关文章

  • Mysql索引底层原理详细讲解
    学习目标Mysql索引底层原理索引数据结构R树B树B+树二叉搜索树(BST)平衡二叉树(AVL树)哈希表(hash)索引的分类空间索引网格索引四叉树索引R树家族索引K-D树索引金字塔索引H3索引主键索引唯一索引单值索引(单列索引)复合索引(组合索引)普通索引全文索引前缀索引覆盖索引......
  • mysql 单表2000w怎么算的
    1.**页大小和存储结构**:-InnoDB存储引擎以页(Page)为单位存储和管理数据,默认页大小为16KB。其中,文件头、页头、页目录等元数据占用了一部分空间,剩下的大约15KB用来存储行记录。2.**索引页和数据页**:-索引页主要存储索引和指针,数据页存储完整的行数据。对于索引页,如果......
  • mysql 索引失效的情况
    在MySQL中,索引的使用可以大大提升查询性能,但在某些情况下,索引可能会失效,导致MySQL无法利用索引,转而进行全表扫描或其他低效操作。以下是索引失效的常见情况:1.查询条件导致索引失效条件中使用了函数:如果查询条件中的列被函数包裹,MySQL无法利用索引。示例: SELECT......
  • MySQL 索引覆盖(Covering Index)
    MySQL索引覆盖(CoveringIndex)是一种优化查询性能的技术,指的是查询所需的所有列的数据都能够从索引中获取,不需要再回表查询数据。 1.索引覆盖的概念覆盖索引(CoveringIndex)是一种索引,它包含了SQL查询中涉及的所有列(包括查询列和条件列),不需要额外访问数据表即可完成查询......
  • 基于Java+SpringBoot+Mysql实现的点卡各种卡寄售平台功能设计与实现一
    一、前言介绍:1.1项目摘要随着电子商务和在线支付技术的快速发展,数字商品和虚拟货币的交易需求日益增长。点卡及各种卡类商品(如游戏点卡、话费充值卡、礼品卡等)作为数字商品的一种,因其便捷性和即时性,在市场中占据了重要地位。然而,传统的点卡销售方式往往存在渠道单一、交易效率......
  • 基于Java+SpringBoot+Mysql实现的点卡各种卡寄售平台功能设计与实现二
    一、前言介绍:1.1项目摘要随着电子商务和在线支付技术的快速发展,数字商品和虚拟货币的交易需求日益增长。点卡及各种卡类商品(如游戏点卡、话费充值卡、礼品卡等)作为数字商品的一种,因其便捷性和即时性,在市场中占据了重要地位。然而,传统的点卡销售方式往往存在渠道单一、交易效率......
  • MYSQL库的操作(如果想知道MYSQL中有关库的操作的知识,那么只看这一篇就足够了!)
        前言:在日常数据库管理中,熟练掌握MySQL的基本操作尤为重要。本文将详细介绍MySQL数据库的创建、查看、修改和删除操作。✨✨✨这里是秋刀鱼不做梦的BLOG✨✨✨想要了解更多内容可以访问我的主页秋刀鱼不做梦-CSDN博客在正式开始讲解之前,先让我们看一下本......
  • 二进制安装MySQL8
    二进制安装MySQL81.创建用户组[root@localhost~]#groupadd-g27mysql&&useradd-g27-u27-M-s/sbin/nologinmysql#创建了一个名为mysql的用户和组,分别赋予了它们特定的ID(UID和GID为27),并设置了用户不能直接登录系统,确保MySQL服务在一个具有特定权限和限制的......
  • MySQL执行计划explain
    ......
  • mysql表
    创建users表(用户信息表)假设我们要记录用户的基本信息,如用户ID、姓名、电子邮件、联系电话、注册日期等。sql--在数据库'weather'中创建一个名为'users'的表USEweather;CREATETABLEusers(idINTAUTO_INCREMENTPRIMARYKEY,--用户ID,主键,自增fir......