<insert id="batchInsertOrUpdateWechatFans" parameterType="java.util.List">
INSERT INTO test(fans_id, test_id, openid, nickname, picture,update_time, create_time)
VALUES
<foreach collection="list" item="item" index="index" separator="," >
(#{item.fansId}, #{item.testId}, #{item.Openid}, #{item.nickName}, #{item.picture},#{item.updateTime},#{item.createTime})
</foreach>
ON DUPLICATE KEY UPDATE nickname=VALUES(nickname), picture=VALUES(picture), update_time=VALUES(update_time)
</insert>
SELECT *
FROM fans
WHERE mp_id=#{mpId}LIMIT #{offset},#{count}
这个语句如果只是查询前面几页,或者是表的数据量不大(小于10万),就没有问题,否则就会出现慢查询。参考文章:【MySQL】 性能优化之 延迟关联进行了优化。