MySQL存储过程(insert数据):insert into table(col1,colu2,colu3) select col1,col2,col3 from table2 where ...;

由于业务需求,需要重新建一张表用来统计每日在职人数及入离职情况,需要根据已存在的记录生成日统计记录。
需要通过日期生成记录,只想统计最近几个月的记录所以使用存储过程(本方法产生的日在职记录在职人数是不准确的,仅在建表之后使用一次产生足够的测试数据)。

使用到的函数:

日期格式化:DATE_FORMAT(date,format)
获取间隔日期:DATE_SUB(NOW(),INTERVAL initNum DAY) ---获取initNum天前的数据
生成主键id:MD5(UUID())
#`nums`代表执行存储过程需传入int类型的形参
CREATE DEFINER=`root`@`localhost` PROCEDURE `createRecord`(IN `nums` int)
BEGIN
	#Routine body goes here...
declare initNum int default 0;
DECLARE currentDay char(13);
		WHILE initNum<=nums DO
			SET initNum = initNum +1;
			SELECT DATE_FORMAT(DATE_SUB(NOW(),INTERVAL initNum DAY),'%Y-%m-%d') INTO currentDay;
			INSERT INTO s_emprecorddaily_t(ID,DEPARTID,QUIT_COUNT,ENTRY_COUNT,REGISTER_COUNT
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值