MySql Bit字段查询的奇怪问题

Posted oliverreal

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySql Bit字段查询的奇怪问题相关的知识,希望对你有一定的参考价值。

今天一个小伙伴遇到一个奇怪的问题:数据库版本是mysql8,有两张表,都有一个名为valid的bit字段,其中一张表用valid=‘1‘可以正常查到数据,另一张表查不到。

百思不得其解,万能的度娘也没有答案。

最后,反复对比两张表的DDL,发现不正常的那张表,在valid字段上居然建了索引!正常的表上没有索引。删除字段上的索引后,一切正常。

一点思考:有索引的时候,是通过索引的值与查询条件进行匹配的,验证mysql里bit字段索引值匹配的时候,隐式数据类型转换出了问题?

以上是关于MySql Bit字段查询的奇怪问题的主要内容,如果未能解决你的问题,请参考以下文章

使用 SELECT 时看不到 MySQL BIT 字段值

访问 MySQL 奇怪的价格字段

导入过程后奇怪的MYSQL查询问题

C#的EF中的字段类型布尔型,mysql数据库里是bit类型,提交识别不了该字段赋的true和false,为啥呢?

Mysql ORDER BY 或 MAX() 用于几个表字段排序?

mysql 在值为null的字段插入数据!