項(xiàng)目中經(jīng)常的需要使用批量操作語句對(duì)數(shù)據(jù)進(jìn)行操作,使用批量語句的時(shí)候需要注意MySQL數(shù)據(jù)庫的條件限制,這里主要是數(shù)據(jù)的大小限制,這里對(duì)批量插入、批量查找及批量更新的基礎(chǔ)操作進(jìn)行下簡(jiǎn)單的匯總。
1、批量insert插入語句,如下的語句在測(cè)試環(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>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:- 淺談MySQL之select優(yōu)化方案
- MySQL將select結(jié)果執(zhí)行update的實(shí)例教程
- 解決MySQL讀寫分離導(dǎo)致insert后select不到數(shù)據(jù)的問題
- MySQL Select語句是如何執(zhí)行的
- MySQL之select in 子查詢優(yōu)化的實(shí)現(xiàn)
- mysql學(xué)習(xí)筆記之完整的select語句用法實(shí)例詳解
- 簡(jiǎn)單了解MySQL SELECT執(zhí)行順序
- mysql事務(wù)select for update及數(shù)據(jù)的一致性處理講解
- MySQL中Update、select聯(lián)用操作單表、多表,及視圖與臨時(shí)表的區(qū)別
- mysql select緩存機(jī)制使用詳解
- MySql數(shù)據(jù)庫中Select用法小結(jié)
- 論一條select語句在MySQL是怎樣執(zhí)行的