关于mysql对”%“,”_“的模糊查询
通常我们使用like 模糊查询的字符串,但是如果用户输入”%“,”“,那么模糊查询的条件为like %%%或%%,此时%,_会被当做通配符,所以模糊查询就会出现问题,两个运行起来一样,有的没的都出来了。
解决方法一:
使用mysql的INSTR函数代替LIKE
解决方法二
特殊字符前追加\进行特殊字符的转义,例如用户输入%_,追加后为%,_这样就可以避免mysql把参数当做通配符。但是这种方式,需要在每个特殊字符前追加\进行特殊字符的转义。
通常我们使用like 模糊查询的字符串,但是如果用户输入”%“,”“,那么模糊查询的条件为like %%%或%%,此时%,_会被当做通配符,所以模糊查询就会出现问题,两个运行起来一样,有的没的都出来了。
使用mysql的INSTR函数代替LIKE
特殊字符前追加\进行特殊字符的转义,例如用户输入%_,追加后为%,_这样就可以避免mysql把参数当做通配符。但是这种方式,需要在每个特殊字符前追加\进行特殊字符的转义。
相关文章: