Mysql 触发器

CREATE TRIGGER insertToTbdaylogger AFTER INSERT ON tbtaskflow FOR EACH ROW BEGIN DECLARE i_temp int; select count(*) into i_temp from tbdaylogger where insertTimes>=DATE_SUB(NOW(),INTERVAL CONCAT("'",MINUTE(NOW()),":",SECOND(NOW()),"'") MINUTE_SECOND) and insertTimes < NOW() and taskid=NEW.taskid; if i_temp = 0 then insert into tbdaylogger(taskid,totalSuccessNum,totalSuccessFlow,totalErrorFlow,totalErrorNum) values(NEW.taskid,NEW.totalSuccessNum,NEW.totalSuccessFlow,NEW.totalErrorFlow,NEW.totalErrorNum); else update tbdaylogger set totalSuccessNum=CAST(totalSuccessNum AS UNSIGNED)+CAST(NEW.totalSuccessNum AS UNSIGNED), totalSuccessFlow=CAST(totalSuccessFlow AS UNSIGNED) + CAST(NEW.totalSuccessFlow AS UNSIGNED), totalErrorFlow= CAST(totalErrorFlow AS UNSIGNED)+CAST(NEW.totalErrorFlow AS UNSIGNED), totalErrorNum=CAST(totalErrorNum AS UNSIGNED)+CAST(NEW.totalErrorNum AS UNSIGNED) where insertTimes>=DATE_SUB(NOW(),INTERVAL CONCAT("'",MINUTE(NOW()),":",SECOND(NOW()),"'") MINUTE_SECOND) and insertTimes <NOW() and taskid=NEW.taskid; end if; END;

查询当前小时内共有的记录数

select count(*) into i_temp from tbdaylogger where insertTimes>=DATE_SUB(NOW(),INTERVAL CONCAT("'",MINUTE(NOW()),":",SECOND(NOW()),"'") MINUTE_SECOND) and insertTimes < NOW()

CONCAT(str1,str2)链接字符串

DATE_SUB(NOW(),INTERVAL 1 DAY)

向前查询一天内的时间 即为当前时间向前一天

CAST(totalSuccessNum AS UNSIGNED)

转换成数字相加


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值