<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > <mapper namespace="com.dao.IPerformanceResultDao"> <insert id="addOnlineResult"parameterType="java.util.List">BEGIN <foreach collection="list"item="item"index="index"separator=";">insert into pts_online_result values( SEQ_PTS_ONLINE_RESULT.nextval, #{item.app_name,jdbcType=VARCHAR}, #{item.app_trade,jdbcType=VARCHAR}, #{item.action_name,jdbcType=VARCHAR}, #{item.con_user,jdbcType=VARCHAR}, #{item.press_time,jdbcType=VARCHAR}, #{item.avg_time,jdbcType=VARCHAR}, #{item.tps,jdbcType=VARCHAR}, #{item.succ_action,jdbcType=VARCHAR}, #{item.fail_action,jdbcType=VARCHAR}, #{item.succ_rate,jdbcType=VARCHAR}, #{item.app_cpu_util,jdbcType=VARCHAR}, #{item.db_cpu_util,jdbcType=VARCHAR}, #{item.scenario_type,jdbcType=VARCHAR}, #{item.app_version,jdbcType=VARCHAR}, #{item.online_tester,jdbcType=VARCHAR}, #{item.online_developer,jdbcType=VARCHAR}, #{item.remark,jdbcType=VARCHAR}, sysdate, sysdate ) </foreach>;end; </insert> <insert id="addBatchResult"parameterType="java.util.List">BEGIN <foreach collection="list"item="item"index="index"separator=";">insert into pts_batch_result values( SEQ_PTS_BATCH_RESULT.nextval, #{item.batch_app_name,jdbcType=VARCHAR}, #{item.batch_app_trade,jdbcType=VARCHAR}, #{item.perpare_data,jdbcType=VARCHAR}, #{item.total_cost,jdbcType=VARCHAR}, #{item.succ_record,jdbcType=VARCHAR}, #{item.fail_record,jdbcType=VARCHAR}, #{item.succ_rate,jdbcType=VARCHAR}, #{item.batch_app_cpu_util,jdbcType=VARCHAR}, #{item.batch_db_cpu_util,jdbcType=VARCHAR}, #{item.scenario_type,jdbcType=VARCHAR}, #{item.batch_app_version,jdbcType=VARCHAR}, #{item.batch_tester,jdbcType=VARCHAR}, #{item.batch_developer,jdbcType=VARCHAR}, #{item.remark,jdbcType=VARCHAR}, sysdate, sysdate ) </foreach>;end; </insert> <select id="queryOnlineResultList"resultType="com.pts.model.PerformanceOnlineResultModel" >select t.RESULT_ID ,t.APP_NAME ,t.APP_TRADE ,t.ACTION_NAME ,t.CON_USER ,t.PRESS_TIME ,t.AVG_TIME ,t.TPS ,t.SUCC_ACTION ,t.FAIL_ACTION ,t.SUCC_RATE ,t.APP_CPU_UTIL ,t.DB_CPU_UTIL ,t.SCENARIO_TYPE ,t.APP_VERSION ,t.ONLINE_TESTER ,t.ONLINE_DEVELOPER ,t.REMARK ,to_char(t.CREATE_TIME, 'yyyy-mm-dd hh24:mi:ss') ,to_char(t.UPDATE_TIME, 'yyyy-mm-dd hh24:mi:ss') from ( select rownum rn ,p1.* from (select * from pts.pts_online_result p order by p.result_id desc) p1 <where> <if test="perResultModel.app_name != null and perResultModel.app_name != ''">and p1.app_name like concat('%',concat(#{perResultModel.app_name,jdbcType=VARCHAR},'%')) </if> <if test="perResultModel.scenario_type != null and perResultModel.scenario_type != ''">and p1.scenario_type like concat('%',concat(#{perResultModel.scenario_type,jdbcType=VARCHAR},'%')) </if> <if test="perResultModel.app_trade != null and perResultModel.app_trade != ''">and p1.app_trade like concat('%',concat(#{perResultModel.app_trade,jdbcType=VARCHAR},'%')) </if> <if test="perResultModel.online_tester != null and perResultModel.online_tester != ''">and p1.online_tester like concat('%',concat(#{perResultModel.online_tester,jdbcType=VARCHAR},'%')) </if> <if test="perResultModel.action_name != null and perResultModel.action_name != ''">and p1.action_name like concat('%',concat(#{perResultModel.action_name,jdbcType=VARCHAR},'%')) </if> <if test="perResultModel.app_version != null and perResultModel.app_version != ''">and p1.app_version like concat('%',concat(#{perResultModel.app_version,jdbcType=VARCHAR},'%')) </if> </where>) t where t.rn <= #{rows,jdbcType=NUMERIC} and t.rn >#{start,jdbcType=NUMERIC} order by result_id desc </select> <select id="queryOnlineResultCount"resultType="java.lang.Integer" >select count(*) from (select * from pts.pts_online_result p order by p.result_id desc) p1 <where> <if test="perResultModel.app_name != null and perResultModel.app_name != ''">and p1.app_name like concat('%',concat(#{perResultModel.app_name,jdbcType=VARCHAR},'%')) </if> <if test="perResultModel.scenario_type != null and perResultModel.scenario_type != ''">and p1.scenario_type like concat('%',concat(#{perResultModel.scenario_type,jdbcType=VARCHAR},'%')) </if> <if test="perResultModel.app_trade != null and perResultModel.app_trade != ''">and p1.app_trade like concat('%',concat(#{perResultModel.app_trade,jdbcType=VARCHAR},'%')) </if> <if test="perResultModel.online_tester != null and perResultModel.online_tester != ''">and p1.online_tester like concat('%',concat(#{perResultModel.online_tester,jdbcType=VARCHAR},'%')) </if> <if test="perResultModel.action_name != null and perResultModel.action_name != ''">and p1.action_name like concat('%',concat(#{perResultModel.action_name,jdbcType=VARCHAR},'%')) </if> <if test="perResultModel.app_version != null and perResultModel.app_version != ''">and p1.app_version like concat('%',concat(#{perResultModel.app_version,jdbcType=VARCHAR},'%')) </if> </where> </select> <select id="queryOnlineResultDetail"resultType="com.pts.model.PerformanceOnlineResultModel">select * from pts.pts_online_result p where p.result_id=#{result_id,jdbcType=NUMERIC} </select> <delete id="delOneOnlineResult">delete from pts.pts_online_result p where p.result_id=#{result_id,jdbcType=NUMERIC} </delete> <update id="editOnlineResultDetail">update pts.pts_online_result p set P.APP_NAME=#{porModel.app_name,jdbcType=VARCHAR} ,P.APP_TRADE=#{porModel.app_trade,jdbcType=VARCHAR} ,P.ACTION_NAME=#{porModel.action_name,jdbcType=VARCHAR} ,P.CON_USER=#{porModel.con_user,jdbcType=VARCHAR} ,P.PRESS_TIME=#{porModel.press_time,jdbcType=VARCHAR} ,P.AVG_TIME=#{porModel.avg_time,jdbcType=VARCHAR} ,P.TPS=#{porModel.tps,jdbcType=VARCHAR} ,P.SUCC_ACTION=#{porModel.succ_action,jdbcType=VARCHAR} ,P.FAIL_ACTION=#{porModel.fail_action,jdbcType=VARCHAR} ,P.SUCC_RATE=#{porModel.succ_rate,jdbcType=VARCHAR} ,P.APP_CPU_UTIL=#{porModel.app_cpu_util,jdbcType=VARCHAR} ,P.DB_CPU_UTIL=#{porModel.db_cpu_util,jdbcType=VARCHAR} ,P.SCENARIO_TYPE=#{porModel.scenario_type,jdbcType=VARCHAR} ,P.APP_VERSION=#{porModel.app_version,jdbcType=VARCHAR} ,P.ONLINE_TESTER=#{porModel.online_tester,jdbcType=VARCHAR} ,P.ONLINE_DEVELOPER=#{porModel.online_developer,jdbcType=VARCHAR} ,P.REMARK=#{porModel.remark,jdbcType=VARCHAR} ,P.UPDATE_TIME=sysdate where p.result_id=#{result_id,jdbcType=NUMERIC} </update> <select id="queryBatchResultList"resultType="com.pts.model.PerformanceBatchResultModel">select t.BATCH_RESULT_ID ,t.BATCH_APP_NAME ,t.BATCH_APP_TRADE ,t.PERPARE_DATA ,t.TOTAL_COST ,t.SUCC_RECORD ,t.FAIL_RECORD ,t.SUCC_RATE ,t.BATCH_APP_CPU_UTIL ,t.BATCH_DB_CPU_UTIL ,t.SCENARIO_TYPE ,t.BATCH_APP_VERSION ,t.BATCH_TESTER ,t.BATCH_DEVELOPER ,t.REMARK ,to_char(t.CREATE_TIME, 'yyyy-mm-dd hh24:mi:ss') ,to_char(t.UPDATE_TIME, 'yyyy-mm-dd hh24:mi:ss') from ( select rownum rn , p1.*from (select * from pts.pts_batch_result p order by p.batch_result_id desc) p1 <where> <if test="perResultModel.batch_app_name != null and perResultModel.batch_app_name != ''">and p1.batch_app_name like concat('%',concat(#{perResultModel.batch_app_name,jdbcType=VARCHAR},'%')) </if> <if test="perResultModel.batch_app_trade != null and perResultModel.batch_app_trade != ''">and p1.batch_app_trade like concat('%',concat(#{perResultModel.batch_app_trade,jdbcType=VARCHAR},'%')) </if> <if test="perResultModel.batch_tester != null and perResultModel.batch_tester != ''">and p1.batch_batch_tester like concat('%',concat(#{perResultModel.batch_batch_tester,jdbcType=VARCHAR},'%')) </if> <if test="perResultModel.batch_app_version != null and perResultModel.batch_app_version != ''">and p1.batch_app_version like concat('%',concat(#{perResultModel.batch_app_version,jdbcType=VARCHAR},'%')) </if> </where>) t where t.rn <=#{rows,jdbcType=NUMERIC} and t.rn >#{start,jdbcType=NUMERIC} order by batch_result_id desc </select> <select id="queryBatchResultCount"resultType="java.lang.Integer" >select count(*) from (select * from pts.pts_batch_result p order by p.batch_result_id desc) p1 <where> <if test="perResultModel.batch_app_name != null and perResultModel.batch_app_name != ''">and p1.batch_app_name like concat('%',concat(#{perResultModel.batch_app_name,jdbcType=VARCHAR},'%')) </if> <if test="perResultModel.batch_app_trade != null and perResultModel.batch_app_trade != ''">and p1.batch_app_trade like concat('%',concat(#{perResultModel.batch_app_trade,jdbcType=VARCHAR},'%')) </if> <if test="perResultModel.batch_tester != null and perResultModel.batch_tester != ''">and p1.batch_tester like concat('%',concat(#{perResultModel.batch_tester,jdbcType=VARCHAR},'%')) </if> <if test="perResultModel.batch_app_version != null and perResultModel.batch_app_version != ''">and p1.batch_app_version like concat('%',concat(#{perResultModel.batch_app_version,jdbcType=VARCHAR},'%')) </if> </where> </select> <select id="queryBatchResultDetail"resultType="com.pts.model.PerformanceBatchResultModel">select * from pts.pts_batch_result p where p.batch_result_id=#{batch_result_id,jdbcType=NUMERIC} </select> <delete id="delOneBatchResult">delete from pts.pts_batch_result p where p.batch_result_id=#{batch_result_id,jdbcType=NUMERIC} </delete> <update id="editBatchResultDetail">update pts.pts_batch_result p set p.BATCH_APP_NAME=#{pbrModel.batch_app_name,jdbcType=VARCHAR} ,p.BATCH_APP_TRADE=#{pbrModel.batch_app_trade,jdbcType=VARCHAR} ,p.PERPARE_DATA=#{pbrModel.perpare_data,jdbcType=VARCHAR} ,p.TOTAL_COST=#{pbrModel.total_cost,jdbcType=VARCHAR} ,p.SUCC_RECORD=#{pbrModel.succ_record,jdbcType=VARCHAR} ,p.FAIL_RECORD=#{pbrModel.fail_record,jdbcType=VARCHAR} ,p.SUCC_RATE=#{pbrModel.succ_rate,jdbcType=VARCHAR} ,p.BATCH_APP_CPU_UTIL=#{pbrModel.batch_app_cpu_util,jdbcType=VARCHAR} ,p.BATCH_DB_CPU_UTIL=#{pbrModel.batch_db_cpu_util,jdbcType=VARCHAR} ,p.SCENARIO_TYPE=#{pbrModel.scenario_type,jdbcType=VARCHAR} ,p.BATCH_APP_VERSION=#{pbrModel.batch_app_version,jdbcType=VARCHAR} ,p.BATCH_TESTER=#{pbrModel.batch_tester,jdbcType=VARCHAR} ,p.BATCH_DEVELOPER=#{pbrModel.batch_developer,jdbcType=VARCHAR} ,p.REMARK=#{pbrModel.remark,jdbcType=VARCHAR} ,p.UPDATE_TIME=sysdate where p.batch_result_id=#{batch_result_id,jdbcType=NUMERIC} </update> </mapper>
mybatis 批量插入和where条件使用
免责声明:文章转载自《mybatis 批量插入和where条件使用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。
上篇MyBatis直接执行SQL查询及批量插入数据EF Core 难道不支持GroupBy吗?下篇
宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=