MyBatis sql中test如何判斷Boolean
mybatis sql中test判斷Boolean
三種方式
<select id="queryAddress" resultType="com.caox.model.Address"> select id, address, remark from address where 1=1 <if test="flag==true"> and address = #{address} </if> </select>
<update id="updateHaveNewComment"> <choose> <when test="flag==true"> UPDATE epc_subject_center s SET s.have_new_comment=1 WHERE s.id=#{id} </when> <otherwise> UPDATE epc_subject_center s SET s.have_new_comment=0 WHERE s.id=#{id} </otherwise> </choose> </update>
<update id="updateHaveNewComment"> <choose> <when test="flag"> UPDATE epc_subject_center s SET s.have_new_comment=1 WHERE s.id=#{id} </when> <otherwise> UPDATE epc_subject_center s SET s.have_new_comment=0 WHERE s.id=#{id} </otherwise> </choose> </update>
if標簽判斷boolean類型的寫法
例子方法
在入參flag不為空的情況下直接判斷
<if test="flag"> AND order_status IN(1, 2, 3) </if> <if test="!flag"> AND order_status IN(4, 5, 6) </if> <<choose> <when test="!flag"> AND order_status IN (4, 5, 6) </when> <otherwise> AND order_status IN (1, 2, 3) </otherwise> </choose>
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。
推薦閱讀:
- mybatis中mapper.xml文件的常用屬性及標簽講解
- MyBatis的9種動態標簽詳解
- MyBatis中關於SQL的寫法總結
- MyBatis中XML 映射文件中常見的標簽說明
- 基於mybatis 動態SQL查詢總結