mysql 强制转化_一个mysql中强制转化的现象

现象如下: mysql> select servicetree_id,server_id from  servicetree_server where  servicetree_id in ('1584','notreeid') ; +----------------+-----------+ | servicetree_id | server_id | +----------------+-----------+ |              0 |      1153 |  |              0 |      1170 |  |           1584 |      9008 |  |           1584 |      9011 |  |           1584 |     19339 |  |           1584 |     20468 |  |           1584 |     20459 |  |           1584 |     20457 |  |           1584 |     20458 |  |           1584 |     20460 |  |           1584 |     20465 |  |           1584 |     20463 |  |           1584 |     20466 |  |           1584 |      5033 |  |           1584 |      1183 |  |           1584 |      5034 |  |           1584 |      5035 |  |           1584 |      5036 |  |           1584 |      9010 |  +----------------+-----------+ 19 rows in set, 1 warning (0.02 sec)   mysql> select servicetree_id,server_id from  servicetree_server where  servicetree_id in ('1584','-1') ; +----------------+-----------+ | servicetree_id | server_id | +----------------+-----------+ |           1584 |      9008 |  |           1584 |      9011 |  |           1584 |     19339 |  |           1584 |     20468 |  |           1584 |     20459 |  |           1584 |     20457 |  |           1584 |     20458 |  |           1584 |     20460 |  |           1584 |     20465 |  |           1584 |     20463 |  |           1584 |     20466 |  |           1584 |      5033 |  |           1584 |      1183 |  |           1584 |      5034 |  |           1584 |      5035 |  |           1584 |      5036 |  |           1584 |      9010 |  +----------------+-----------+ 17 rows in set (0.00 sec) 原因: servicetree_id字段类型为int 字符串"notreeid"被转成0  建议: 不要自己使用字符串拼凑 mysql搜索中的 in 字符串, 尽量使用php中的implode函数组装,则不必附加此类的字符串 使用implode也应该注意一下当implode的数组为空的情况下,会导致查询失败,直接返回null,所以要对implode的数组先进行一下空判断

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值