mybatis实现模糊查询
1.什么是模糊查询?
想必之前大家听过一个段子吧?
马什么梅? 什么冬梅?,哈哈!
比如我们数据库中现在有马冬梅,马夏美,马秋梅,马春梅,马龙,等等,
那好现在我们要查询姓马的,如何实现呢?
要查名字含有冬梅的,又如何实现呢?
在sql语句中模糊查询,主要是使用一下两种占位符( _和%)
-
' _ ' 是匹配一个字符
-
' % ' 是匹配任意多个字符
2.如何实现模糊查询?
1,第一种方式
java的dao层
List<Girl> selectGirl(String name);
mapper中xml文件
<select id="selectGirl" resultType="com.jw.domian.Girl">
select * from girl where name like #{name}
</select>
比如我们要查询名字含有冬的,
到时候传入name参数时,name就为 " %冬% "
有比如我们要查询名字为两个字的就可以传入
name -> " __ "
注意啊,这里是两个_ ,合在一起就是__
2.第二种方式
我们在传入参数时,不用加上占位符,直接传名字;
比如我们要查询名字含有冬的,就直接传入冬
我们在sql语句中拼接
<select id="selectGirl" resultType="com.jw.domian.Girl">
select * from girl where name like "%" #{name} "%"
</select>
注意这里不要大意了啊
,"%" 和== #{name}== 之间一定要有空格哦
模糊查询简单吧!如果博主有讲的不对的地方,欢迎━(`∀´)ノ亻!朋友们指正啊!