MySQL select、insert、update批量操作語句代碼實例
項目中經(jīng)常的需要使用批量操作語句對數(shù)據(jù)進行操作,使用批量語句的時候需要注意MySQL數(shù)據(jù)庫的條件限制,這里主要是數(shù)據(jù)的大小限制,這里對批量插入、批量查找及批量更新的基礎(chǔ)操作進行下簡單的匯總。
1、批量insert插入語句,如下的語句在測試環(huán)境嘗試過1W+的批量插入,具體數(shù)量跟表結(jié)構(gòu)及字段內(nèi)容有關(guān)系。
<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>
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
lnmp重置mysql數(shù)據(jù)庫root密碼的兩種方法
這篇文章給大家介紹了lnmp重置mysql數(shù)據(jù)庫root密碼的兩種方法,第一種方法通過腳本重置密碼,第二種方法通過命令修改,具體操作方法大家參考下本文2017-07-07
MySQL實現(xiàn)批量插入測試數(shù)據(jù)的方式總結(jié)
在開發(fā)過程中經(jīng)常需要一些測試數(shù)據(jù),?這個時候如果手敲的話,?十行二十行還好,?多了就很死亡了,?接下來介紹兩種常用的MySQL測試數(shù)據(jù)批量生成方式,希望對大家有所幫助2023-05-05
windows下MySQL5.6版本安裝及配置過程附有截圖和詳細說明
這篇文章主要介紹了windows下MySQL5.6版本安裝及配置過程附有截圖和詳細說明,需要的朋友可以參考下2013-06-06

