mysql ON DUPLICATE KEY UPDATE添加或更新

ON DUPLICATE KEY UPDATE添加或更新
首先主鍵是索引
insert into ys_yssf_rj
(customerId,settleDate,settleMoney,
settleActual, settleBalance,settleAccountState)
VALUES
(#customerId#,now(),#settleMoney#,
#settleActual#,#settleBalance#,#settleAccountState#
)
ON DUPLICATE KEY UPDATE
settleDate = now(),
settleMoney = #settleMoney#,
settleActual = #settleActual#,
settleBalance = #settleBalance#,
settleAccountState = #settleAccountState#
以前的做法是先根據主鍵去查找是否存在記錄,找到就update,找不到就insert。需要寫兩條語句
on duplicate key update 的寫法,很簡單的解決了上面的問題,而且只需要寫一條語句。

在給個例子,找得到就更新count自增

INSERT SPEAK_COUNT
SET participant_id = #{
participantId },
meeting_id = #{ meetingId },
agenda_id = #{ agendaId },
count = 1
ON DUPLICATE KEY UPDATE count = count + 1

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章