select d.id, t.name, d.course_code, d.item, d.actualpost_id, d.remarks, d.del_flag, d.creater_code, d.createdate, d.updater_code, d.updatedate, d.dept_id, d.plan_trainingdate, d.actual_completedate, d.lecturer, d.hour, d.year, d.designated_position, d.designated_staff, d.involved_moc, d.not_plan, d.not_trainingdate, d.designated_other ,s.dept_name from t_training_regular d left join sys_dept s on s.dept_id = d.dept_id left join t_staffmgr t on t.staffid = d.lecturer and t.del_flag = 0 SELECT seq_t_training_regular.NEXTVAL as id FROM DUAL insert into t_training_regular id, course_code, item, actualpost_id, remarks, del_flag, creater_code, createdate, updater_code, updatedate, dept_id, plan_trainingdate, actual_completedate, lecturer, hour, year, designated_position, designated_staff, involved_moc, designated_other, not_plan, not_trainingdate, #{id}, #{courseCode}, #{item}, #{actualpostId}, #{remarks}, #{delFlag}, #{createrCode}, #{createdate}, #{updaterCode}, #{updatedate}, #{deptId}, #{planTrainingdate}, #{actualCompletedate}, #{lecturer}, #{hour}, #{year}, #{designatedPosition}, #{designatedStaff}, #{involvedMoc}, #{designatedOther}, #{notPlan}, #{notTrainingdate}, update t_training_regular course_code = #{courseCode}, item = #{item}, actualpost_id = #{actualpostId}, actualpost_id = NULL, remarks = #{remarks}, del_flag = #{delFlag}, creater_code = #{createrCode}, createdate = #{createdate}, updater_code = #{updaterCode}, updatedate = #{updatedate}, dept_id = #{deptId}, plan_trainingdate = #{planTrainingdate}, actual_completedate = #{actualCompletedate}, lecturer = #{lecturer}, hour = #{hour}, year = #{year}, designated_position = #{designatedPosition}, designated_staff = #{designatedStaff}, designated_position = NULL, designated_staff = NULL, involved_moc = #{involvedMoc}, designated_other = #{designatedOther}, not_plan = #{notPlan}, not_trainingdate = #{notTrainingdate}, where id = #{id} update t_training_regular set del_flag = 2 where id = #{id} update t_training_regular set del_flag = 2 where id in #{id}