模糊查询
SQL模糊查询,使用like比较字,一般要加上相对的通配符进行查询
1、LIKE’ Mc
%’ 将搜索以字母 Mc 开头的所有字符串(如 McBadden)。
2、LIKE ‘%inger’ 将搜索以字母inger 结尾的所有字符串(如 Ringer、Stringer)。
3、LIKE’%en%’ 将搜索在任何位置包含字母 en 的所有字符串(如 Bennet、Green、McBadden)。
4、LIKE’_heryl’ 将搜索以字母 heryl结尾的所有六个字母的名称(如 Cheryl、Sheryl)。 “_” 代表单个任意字符。
5、LIKE’[CK]ars[eo]n’将搜索下列字符串:Carsen、Karsen、Carson 和 Karson(如 Carson)。 “[ ]” 代表包含其中任意一个字符。
6、LIKE ‘[M-Z]inger’ 将搜索以字符串 inger 结尾、以从 M 到 Z 的任何单个字母开头的所有名称(如 Ringer)。
7、LIKE ‘M[^c]%’ 将搜索以字母 M 开头,并且第二个字母不是 c 的所有名称(如MacFeather),[^]非。
mybatis实现模糊查询。
UserMapper接口中定义的方法。
//like 关键字与通配符搭配,如%,%%,_等
List<User> getUserLike(String value);
UserMapper.xml里面写sql语句。
<select id="getUserLike" resultType="com.kang.pojo.User">
select * from mybatis.user where name like #{value}
</select>
测试实现
1. public void like(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
List<User> userList = mapper.getUserLike("%李%");
for (User user : userList) {
System.out.println(user);
}
}
查询结果
User{id=2, name='李四', pwd='123456'}
User{id=4, name='李五', pwd='123456'}
本文介绍了SQL中的模糊查询用法,如LIKE操作符配合通配符%和_进行字符串匹配。同时展示了在MyBatis中如何实现模糊查询,通过UserMapper接口和XML映射文件完成对User表中name字段的模糊查询。测试案例展示了查询以'李'字开头的用户记录。
4942

被折叠的 条评论
为什么被折叠?



