通过一些不连贯的关键字在数据库中查询相关数据.
例:
这个里面,我就通过"数的拆用",就查询出"整数的拆分及应用"
我的想法是:将前端传过来的字符串拆分成char类型的数组,然后在sql语句的模糊查询中,去遍历这个数组.
service中的方法:
@Transactional
@Override
public List<Blog> queryByTitle(String title) {
char []titleChar = title.toCharArray();
return blogMapper.queryByTitle(titleChar);
}
mapper.xm:
<select id="queryByTitle" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from t_blog
where title like concat(concat('%' ,
<foreach item="item" index="index" collection="title" open="" separator="'%'" close="">
#{item}
</foreach>
),'%')
order by id desc
</select>
在sql模糊查询语句中,我使用foreach来遍历,数组.本来foreach是配合in使用的,但我抱着尝试的心态,居然成功了.关于foreach自己查询,我这就不多说了.
重点 :
1.遍历对象之间的参数一定是'%',别忘了单引号.
2.查询语句最后要加order by语句,否则运行的时候,控制台会爆红,但能正常查出数据.