问个mysql很简单的查询问题啊
mysql> desc assets;
+----------------------+--------------+
| Field | Type |
+----------------------+--------------+
| description | text |
| requirement | text |
| flag | int(4) |
| hostEffect | varchar(100) |
| relatedProfession | text |
现在我的flag是int类型,赋值是0,
mysql> select flag from assets;
+------+
| flag |
+------+
| 0 |
| 0 |
| 0 |
| 0 |
| 0 |
| 0 |
这样查出来得结果肯定是没问题的
1. mysql> select flag from assets where flag=0;
+------+
| flag |
+------+
| 0 |
| 0 |
| 0 |
| 0 |
| 0 |
| 0 |
但是这样居然可以把所有为0的记录查出来
2.mysql> select flag from assets where flag='adsafasfasf';
+------+
| flag |
+------+
| 0 |
| 0 |
| 0 |
| 0 |
| 0 |
| 0 |
| 0 |
+------+
290 rows in set, 1 warning (0.00 sec)
这样记录又是空的
3.mysql> select flag from assets where flag='12';
Empty set (0.00 sec)
据我个人感觉2和3应该都是空,where后面跟的条件是查不出结果的,这是怎么个情况呢