MySQL select、insert、update批量操作語句程式碼例項
阿新 • • 發佈:2020-04-09
專案中經常的需要使用批量操作語句對資料進行操作,使用批量語句的時候需要注意MySQL資料庫的條件限制,這裡主要是資料的大小限制,這裡對批量插入、批量查詢及批量更新的基礎操作進行下簡單的彙總。
1、批量insert插入語句,如下的語句在測試環境嘗試過1W+的批量插入,具體數量跟表結構及欄位內容有關係。
<insert id=”addTextPushList”paramerterType = “java.util.List”> INSERT INTO SYS_TEXT_PUSH( PUSH_ID,USER_UM_ACCOUNT,USER_NAME,SECTION,USER_MOBILE,PUSH_STATUS,PROMOTE_ID,CREATED_BY,CREATION_DATE,ENABLED_FLAG )values <foreach collection=”list” item = “item” separator=”,”> ( #{item.pushId},#{item,userUmAccount},#{item.userName},#{item.section},#{item.userMobile},#{item.pushStatus},#{item.promoteId},#{item.createdBy},#{item.creationDate},#{item.enabledFlag} ) </foreach> </insert>
2、批量select查詢語句
<select id = “getTextPromoteByIds” parameterType = “java.util.list” resultMap = “textPromoteMap”> SELECT * FROM SYS_TEXT_PROMOTE WHERE TEXT_PUSH_FLAG = 1 AND PROMOTE_ID IN <foreach collection=”list” item = “item” open=”(” separator=”,” close =”)”> #{item} </foreach> </select>
3、批量update語句。
第一種情況是需更新的值相同:
<update id = “updatePushStatus” parameterType = “java.util.List”> update SYS_TEXT_PUSH SET PUSH_STATUS = 1,LAST_UPDATE_DATE = NOW() WHERE PUSH_ID IN <foreach collection=”list” item = “item” open=”(” separator=”,” close =”)”> #{item} </foreach> </update>
第二種情況是需更新的值不同:
<update id = “updatePushStatus” parameterType = “java.util.List”> <foreach collection=”list” item = “item” index = “index”> update SYS_TEXT_PUSH SET PUSH_STATUS = #{item.pushStatus},LAST_UPDATE_DATE = NOW() WHERE PUSH_ID = #{item.pushId} </foreach> </update>
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。