Mysql中的like关键字,大家都不陌生,常用于模糊查询等,但是我们一般都是使用在varchar等字符串类型上,今天我遇到了一个需求,需要使用在数值类型上,那么该怎么解决这个问题呢?答案是使用cast()函数进行对数值类型进行转换。
cast()函数作用:
CAST()函数将任何类型的值转换为具有指定类型的值。目标类型可以是以下类型之一:BINARY,CHAR,DATE,DATETIME,TIME,DECIMAL,SIGNED,UNSIGNED。
cast()函数语法:
cast(字段名 as 字段类型);
举例:
前置条件:
假设存在一张user表:id(主键,int),name(varchar)
需求:
查找出id包含1的用户
实现:
select * from user wherer cast(id as char) like '%1%';