mysql 存储过程动态执行sql

来源:互联网 发布:淘宝网收藏删除的宝贝 编辑:程序博客网 时间:2024/05/29 21:34
CREATE DEFINER=`root`@`%` PROCEDURE `pro_user_ucwc_list_decId`()
BEGIN
    set @v_sql = concat("insert into t_alarm_log (devId,cvs,createDate) SELECT @devId:=devid , @cvs:=sum(vcs),curdate() FROM db_cloudCount.`t_user_ucvvc_list_",date_sub(curdate(),interval 1 day),"` group by devId ");
prepare stmt from @v_sql;  #预处理需要执行的动态SQL,其中stmt是一个变量
EXECUTE stmt;      #执行SQL语句
deallocate prepare stmt;
    
    DELETE FROM db_cloudCount.t_alarm_log WHERE CREATEDATE <= DATE_SUB(CURDATE(), INTERVAL 1 MONTH);
    commit;
End
0 0