【发布时间】:2017-10-31 05:57:22
【问题描述】:
我是存储过程的新手,以下是我的要求, 我需要想出存储过程来为我的表(例如下面)填充过去 4 个月的数据,其中 T_KEY、A_KEY、M_KEY 和 G_KEY 的值不同。
mysql> select * from R_A_METRICS;
+---------------------+------------+-----------------+-------+------------+
| TIMESTAMP | T_KEY | A_KEY | M_KEY | G_KEY
| 2017-06-30 00:00:00 | a | b | c | d
| 2017-06-30 00:15:00 | a1 | b1 | c1 | d1
以下是我填充 4 个月数据的示例程序,
PROCEDURE `POPULATE_A_METRICS`()
BEGIN
DECLARE START_DAY TIMESTAMP;
DECLARE END_DAY TIMESTAMP;
SET START_DAY = CURDATE() - INTERVAL 4 MONTH;
SET END_DAY = CURDATE();
WHILE (START_DAY <= END_DAY) DO
insert into R_A_METRICS values(START_DAY,T_KEY,A_KEY,M_KEY,G_KEY);
SET START_DAY = START_DAY + INTERVAL 15 MINUTE;
END WHILE;
END
我想设置像@T_KEY=a,a1,a2 这样的值,并以循环方式将其插入到表中。 对 A_KEY、M_KEY、G_KEY 等其他列的类似要求
关于如何通过存储过程实现这一点的任何想法?
TIA
【问题讨论】: