本文主要是介绍关于Mysql报jdbcType类似的问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
这个是报错版,会叫你添加jdbcType=varchar/number等
<select id="DOpenStatlist" parameterType="page" resultType="pd">SELECT DATE_FORMAT(START_TIME,'%Y-%m-%d') STARTTIME,<!-- 开始时间 -->DATE_FORMAT(END_TIME,'%Y-%m-%d') ENDTIME,<!-- 结束时间 -->COUNT(room_id) COUNT FROM result GROUP BY DATE_FORMAT(START_TIME,'%Y-%m-%d') HAVING 1=1 <if test="pd.lastStart !=null and pd.lastStart !=''">andDATE_FORMAT(START_TIME,'%Y-%m-%d') >= #{pd.lastStart} </if> <if test="pd.lastEnd !=null and pd.lastEnd !=''">andDATE_FORMAT(END_TIME,'%Y-%m-%d') <= #{pd.lastEnd} </if> ORDER BY DATE_FORMAT(START_TIME,'%Y-%m-%d') DESC
</select>
这个是没有报jdbcType错误的。其原因该是性能问题,将GROUP BY 移至后面。
<select id="DOpenStatlist" parameterType="page" resultType="pd">SELECT DATE_FORMAT(START_TIME,'%Y-%m-%d') STARTTIME,<!-- 开始时间 -->DATE_FORMAT(END_TIME,'%Y-%m-%d') ENDTIME,<!-- 结束时间 -->COUNT(room_id) COUNT FROM resultWHERE 1=1 <if test="pd.lastStart !=null and pd.lastStart !=''">andDATE_FORMAT(START_TIME,'%Y-%m-%d') >= #{pd.lastStart} </if> <if test="pd.lastEnd !=null and pd.lastEnd !=''">andDATE_FORMAT(END_TIME,'%Y-%m-%d') <= #{pd.lastEnd} </if> GROUP BY DATE_FORMAT(START_TIME,'%Y-%m-%d') ORDER BY DATE_FORMAT(START_TIME,'%Y-%m-%d') DESC </select>
警戒!
这篇关于关于Mysql报jdbcType类似的问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!