工作中的笔记
<!--定時作業-->
<!--添加釋放記錄-->
<insert id="automaticRelease1" >insert into zxzq_drawcash_record (status ,memberid , releasenum, securitiesnum, securitiesnum_after, time, securitiesid)select 2, h.memberid,TRUNCATE( if(r.securities > TRUNCATE(h.securitiesnum * 0.999,2), TRUNCATE(h.securitiesnum-r.securities,2),TRUNCATE(h.securitiesnum * 0.001,2)),2),h.securitiesnum,TRUNCATE(if(r.securities > TRUNCATE(h.securitiesnum * 0.999,2),r.securities,TRUNCATE(h.securitiesnum - TRUNCATE(if(r.securities > TRUNCATE(h.securitiesnum * 0.999,2),TRUNCATE(h.securitiesnum-r.securities,2) ,TRUNCATE(h.securitiesnum * 0.001,2)),2),2)),2),NOW(),r.securitiesidfrom zxzq_holding h ,zxzq_record r where h.securitiesid = r.securitiesid and r.price = r.realprice and h.securitiesnum > r.securities
</insert><update id="automaticRelease2">replace into zxzq_drawcash (memberid, securitiesnum) select h.memberid ,TRUNCATE(d.securitiesnum + sum(if(r.securities > TRUNCATE(h.securitiesnum*0.999,2),TRUNCATE(h.securitiesnum-r.securities,2),TRUNCATE(h.securitiesnum*0.001,2))),2)from zxzq_holding h inner join zxzq_drawcash d on d.memberid = h.memberidinner join zxzq_record r on r.price=r.realprice and h.securitiesnum > r.securities and h.securitiesid=r.securitiesid group by h.memberid
</update>
<update id="automaticRelease3">update zxzq_holding h, zxzq_record r set h.securitiesnum =if( r.securities > TRUNCATE(h.securitiesnum * 0.999,2) , r.securities, TRUNCATE(h.securitiesnum * 0.999,2)) where r.securitiesid = h.securitiesidand r.price = r.realprice
</update>作為定時器的sql代碼,通過spring定時任務來完成。<task:annotation-driven /><task:scheduled-tasks><task:scheduled ref="securitiesController" method="automaticRelease" cron="0 0 0 ? * MON-FRI"/>
</task:scheduled-tasks>還需要在securitiesController的automaticRelease方法上面增加@Scheduled注解。
總結
- 上一篇: 一个MySQL存储过程的模板
- 下一篇: 工作中常用的第三放的框架