社区
MySQL
帖子详情
字段为char类型,where条件值中带引号却查不出,不到引号就可以
hncslsy
2013-07-22 10:04:29
我的字段是 char 或varchar 在查询里 where 子句的条件加了引号却查不出,不加引号才可以查出,请高手指教
select * from a where types='13'
这里的 types字段是 char 或 varchar 以上查不出结果,以前是可以的,不知道是动了哪里
select * from a where types=13 这样才可以,
...全文
1878
4
打赏
收藏
字段为char类型,where条件值中带引号却查不出,不到引号就可以
我的字段是 char 或varchar 在查询里 where 子句的条件加了引号却查不出,不加引号才可以查出,请高手指教 select * from a where types='13' 这里的 types字段是 char 或 varchar 以上查不出结果,以前是可以的,不知道是动了哪里 select * from a where types=13 这样才可以,
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
珠海-天堂
2013-07-23
打赏
举报
回复
1
数字和字符之间会有隐式转换。
楼主的比较字符串肯定有问题。注意单引号。
select * from a where types='13';
rucypli
2013-07-23
打赏
举报
回复
select * from a where types看看
wwwwb
2013-07-23
打赏
举报
回复
检查一下字符串长度 CHAR_LENGTH(str)
ACMAIN_CHM
2013-07-22
打赏
举报
回复
select len(types) from a where types=13 估计并不等于2 注意 '13 ' != '13'
mysql
字段
类型
为
char
类型
查询时无法使用索引
char
类型
字段
使用where查询的时候,该
字段
的值必须要加
引号
(哪怕是纯数字),说明这是个字符串,不然无法使用索引,导致全表查询。
mysql
字段
类型
为
char
类型
,建立索引但未使用原因
最近在做mysql索引测试,新建了一个数据表,为两个
字段
分别建立普通索引,本来是为了测试其他的情况做准备,开始之前,分别对这两个
字段
进行了一个简单的查询操作,explain一下不当紧,一下颠覆了我的认知,我明明只是使用了where
字段
名=
字段
值 操作,按理说应该是走索引的呀,为什么不走了?不甘心,我又测试几遍,type
类型
都是ALL,全表查询,为什么,难道where
字段
名=
字段
值本来就不
oracle字符型数值不加
引号
,字符
类型
存数字及查询数字
oracle字符型数值不加
引号
,字符
类型
存数字
oracle中where
条件
中
类型
的隐式转换
sql的where
条件
中,等式两边
类型
不一致时,数据库会做一次隐式
类型
转换。 如果是数字
类型
(诸如number,double,integer等)的话,会默认的把带
引号
的转成数字再进行查询,也就是说带
引号
和不带
引号
是一样的。 select * from t where to_number(
char
_col) = num_val oracle会从“大”
类型
转换到“小”
类型
。 oracle会在
char
类...
Oracle中单
引号
与双
引号
的使用及动态拼接
Oracle中单
引号
与双
引号
的使用及动态拼接。
MySQL
57,064
社区成员
56,761
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章