Mysql int字段过滤掉string中字母只有查询数字
Song •
1298 次浏览 •
0个评论 •
2021年11月15日
从Mariadb切换到mysql数据库,发现select的时候mysql可以直接对int字段传string类型值。 如:
select * from shcool where id='8abc';
居然等同于:
select * from shcool where id='8';
原理:Mysql会将传入的string(要赋值给int字段的)从左到右的第一个非数值开始,将后面的字符串转成0,在和数值类型相加。
如上述例子就是"8abc"->8+0=12。
insert、select、update、delete都可以。
-
Laravel自带分页paginate数据中的 items如何获取/替换 2021-11-12 -
git记住账号密码避免每次都输入 2021-11-04 -
Ubuntu 20LTS 安装部署Nginx+php8+Mysql教程运行Laravel 2021-11-03 -
Laravel使用Carbon实现的发帖时间展示(刚刚、几分钟前、几天前、几月前、几年前) 2021-10-20 -
Laravel 出现Variable 'sql_mode' can't be set to the value of 'NO_AUTO_CREATE_USER'解决办法 2021-10-20

更多相关好文