第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > mybatis中使用mysql的模糊查询字符串拼接(like)

mybatis中使用mysql的模糊查询字符串拼接(like)

时间:2019-03-03 11:18:14

相关推荐

mybatis中使用mysql的模糊查询字符串拼接(like)

方法一:

<!-- 根据hid,hanme,grade,模糊查询医院信息-->

方法一:

List<Hospital> getHospitalLike(@Param("selectword") String selectword);

<select id="getHospitalLike" resultType="com.hand.hand.domain.Hospital">

SELECT *

FROM hospital

where hid=cast(#{selectword} as signed INTEGER ) OR hname like concat('%',#{selectword},'%')

OR grade like concat('%',#{selectword},'%')

</select>

where hid=cast(#{selectword} as signed INTEGER ) hid为Integer类型,而参数selectword为string类型,所以用cast将string转化为Integer

where hname like concat('%',#{selectword},'%') 字符串拼接,将%和selectword拼接成%selectword%

方法二:动态sql中的bind

List<Hospital> getHospitalLike(@Param("selectword") String selectword);

<select id="getHospitalLike" resultType="com.hand.hand.domain.Hospital">

<bind name="bindselectword" value="'%'+selectword+'%'"></bind>

SELECT *

FROM hospital

<if test="selectword!=null">

where hid=cast(#{selectword} as signed INTEGER ) OR hname like #{bindselectword}

OR grade like #{bindselectword}

</if>

</select>

方法三:

在service层直接拼接字符串,xml直接使用转入的参数

此方法测试出错(参考博客后,测试出错):

<!--where hid like '%'||#{selectword}||'%' or hname like '%'||#{selectword}||'%' or grade like '%'||#{selectword}||'%'-->

其他拼接法,可参考:/dushan/p/4766954.html

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。