MYSQL的varchar与数值举例分析
发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,本篇内容主要讲解"MYSQL的varchar与数值举例分析",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"MYSQL的varchar与数值举例分析"吧!事件
千家信息网最后更新 2024年09月22日MYSQL的varchar与数值举例分析
本篇内容主要讲解"MYSQL的varchar与数值举例分析",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"MYSQL的varchar与数值举例分析"吧!
事件起源
好了来说具体场景,被同事叫去看一个奇怪的SQL。SQL语句很简单,大概就是查询某些字段有一些查询条件而已。其中比较重要的一个条件就是 「where xx!=0」。说是很奇怪,为什么!=0就查询到的结果就是10条。但是!=1 查询出来的结果就是100条。
SELECT A,B,C FROM TABLE WHERE A!=0
res:10
SELECT A,B,C FROM TABLE WHERE A!=0
res:100
下面我们简单的来几条数据看一下状况。
状况复现
「所有数据」
「!=0」
当时就是直接拿到了这样的结果。
分析状况
当时看到这个问题之后我也很惊奇,不等于0 不应该把所有的数据都拿到么。为什么会出现这样的情况呢?
简单考虑了一下,字段的类型为 varchar型,而查询条件给予的是个数值型,那么问题应该就是出现在这里。
数据库在基于查询条件进行检索的时候会如何进行操作呢?
答案就是转换成相同的类型。
那么对于这次的问题是字段转换成int类型还是int转换成varchar类型呢?其实简单的看查询结果就知道了。如果查询条件'0'转换成了varchar那么就应该获取到全部的数据。但是现在的状况是获取到的数据不够。那结论就是数据库把要查询的字段转换成了数值型。
那么我们把app字段进行转换一下试试。
从结果上我们可以看到 app 转换之后的结果只有 0123asfj 转换成了123,其他都是0。所以在查询条件为 '!=0' 的时候就只能查询到一条结果。
到此,相信大家对"MYSQL的varchar与数值举例分析"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
查询
就是
数据
结果
条件
数值
字段
分析
状况
类型
问题
内容
数据库
时候
学习
实用
更深
相同
重要
惊奇
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
波场dapp软件开发
网络安全一路随行活动
导入应用数据库到手机号
软件开发工具在技术上
数据库mysql对象有哪些内容
怎么做数据库不会写代码
软件开发概要设计文档
中国上市公司专利数据库
网络文件上传服务器
服务器需要做双网卡设置吗
北京云丁网络技术有限
数据库主备同步方式
voc 数据库图像格式
广州青少年网络安全
上海杰普软件开发区在哪里
pg数据库查询表分区信息
士官学校通信无线电网络技术
公安网络安全培训活动
圆周率服务器
软件开发流程及各个阶段的结果
杨浦区软件开发信息推荐
数据库投影运算怎么理解
服务器远程管理卡需要公网ip吗
山西erp软件开发咨询客服
网络安全比赛刘翰卓
长沙软件开发个人
安卓修图软件开发
软件开发风险包括哪些
服务器老提醒文件已打开
电脑数据库安装错误