结合choose otherwise标签也可以实现某些参数的动态控制、插入,直接上代码:
<insert id="insert">
INSERT INTO XXXX(数据表)XXX(EID, EITIME, EUTIME, BRANCHNO, CLIENTTYPE, ERRORCODE, ERRORCOUNT, REPORTDATE)
VALUES (XTZX.SEQ_EID.nextval, sysdate, sysdate, #{branchNo}, #{clientType}, #{errorCode}, #{errorCount},
<choose>
<when test="startDate != null">
to_date(#{startDate},'yyyy-mm-dd')
</when>
<otherwise>
trunc(sysdate-1)
</otherwise>
</choose>
)
</insert>
根据参数中有误startDate字段,往表中reportDate字段选择性的插入某个值。
灵活运用choose标签实在太方便了。