>데이터 베이스 >MySQL 튜토리얼 >关于MYSQL查询时WHERE条件值为数字的问题_MySQL

关于MYSQL查询时WHERE条件值为数字的问题_MySQL

WBOY
WBOY원래의
2016-06-01 13:11:461293검색

本来我需要查询

SELECT * FROM demo WHERE status=1;

杯具的是,我想要的结果没有出来,找了一下问题的原因

我数据库中status字段的类型为enum,不是数字类型的原因?

SELECT * FROM demo WHERE status=‘1’;

这样就可以了,我一直以为是一样的呢,以为MYSQL自动会转换类型,看来以为是不行的...可怜

 

//终于明白为什么了,上面的想法是错误的....

原来如果字段类型为enum的话,status=1

不加引号查询的是索引的值,FUCK,我以前怎么就不知道呢?哈哈

举个例子:enum里面放着0,1,下面就是索引所对应的字段(可能这样叫不合适?),当让如果加上单引号就是正常的值的匹配了

对应的字段 索引
NULL NULL
"" 0
"0" 1
"1" 2

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.