表数据作为参数传递到存储过程并插入到mysql中的另一个表中

时间:2016-11-27 17:37:30

标签: mysql

我有这个表,我需要将每个行值传递给存储过程,然后它将返回start_dateend_date之间每行的日期列表。

该过程仅返回两列interval_startinterval_end但我正在尝试使用日期列表显示表ID中的A列。之后,输出将仅为每个ID插入另一个表中。

表A:

ID  start_date  end_date
1   2016-01-01  2020-12-31
2   2017-01-01  2020-12-31
3   2018-01-01  2020-12-31
4   2019-01-01  2020-12-31
5   2020-01-01  2020-12-31

存储过程:

call make_intervals('2016-01-01','2020-12-31')

此程序返回:

interval_start  interval_end
2016-01-01      2016-12-31
2017-01-01      2017-12-31
2018-01-01      2018-12-31
2019-01-01      2019-12-31
2020-01-01      2020-12-31

我希望得到如下所示的返回,然后插入另一个表: (样品)

aid interval_start  interval_end
1   2016-01-01      2016-12-31
1   2017-01-01      2017-12-31
1   2018-01-01      2018-12-31
1   2019-01-01      2019-12-31
1   2020-01-01      2020-12-31
2   2016-01-01      2016-12-31
2   2017-01-01      2017-12-31
2   2018-01-01      2018-12-31
3   2019-01-01      2019-12-31
3   2020-01-01      2020-12-31

将此值放入表B:

aid (int),
interval_start (date),
interval_end (date)

如果id插入一次,则不会再次插入。

请帮我完成这件事。

0 个答案:

没有答案