MySql查询int类型字段作查询条件注意事项

今天使用MySql查询时,发现一个诡异的现象,id是int类型自增主键,传入查询为UUID随机字符串,居然查到了记录,如图:

MySql查询int类型字段作查询条件注意事项_第1张图片

研究发现,MySql以字符串第一个字符开始遍历,遇到非数字则结束,遍历到的数字作为查询条件,如上图第一个字母前的数字“1”作为条件,查询到Id为“1”的记录。

如果想精确匹配,可以使用concat关键字,将Id转成字符串去比较,可以精确匹配,如图:

MySql查询int类型字段作查询条件注意事项_第2张图片

 

你可能感兴趣的:(MySql)