记一次 Mysql 查询条件中字符串尾部空格问题
记一次 Mysql 查询条件中字符串尾部有空格也能匹配上的问题😇,Bug一个接一个只因为自己太菜。
表结构
TABLE fruit
id | name |
---|---|
1 | 西瓜 |
2 | 西瓜(一个空格) |
3 | 西瓜(二个空格) |
SQL
1 | select * from person where `name` = "西瓜" |
这两条sql都可以把3条数据全部查询出来。
原因
MySQL 校对规则属于PADSPACE,会忽略尾部空格,针对的是 varchar char text …… 等文本类的数据类型,此为 SQL 规范。无需要设置也无法改变。
PS: 至于怎么解决我相信你自有妙计
评论