MySQL表1新增數據,計算開始、結束日期之間全部時間,插入到表2中

新建表c3sql

#id設置自增量,kk是要同步的一些數據值,dd是開始時間,dde是結束時間
CREATE TABLE c3 (
id int(11) NOT NULL auto_increment PRIMARY KEY,
kk  varchar(255),
dd  datetime,
dde datetime
)

新建表c4
ide

#id也設置自增量,kk是要同步的一些數據值,dd是統計出開始與結束之間的全部日期
CREATE TABLE c4 (
id int(11) NOT NULL auto_increment PRIMARY KEY,
id_c3 int(11),
kk  varchar(255),
dd  datetime
)

建立觸發器blog

# 設定一個變量i,默認值是0,DATEDIFF(new.dde,new.dd)是計算日期差值,
#DATE_ADD(new.dd,interval i DAY)經過變量i來補充全部日期,
CREATE TRIGGER c3_insert_c4 AFTER INSERT
ON c3 FOR EACH ROW
BEGIN
DECLARE i int DEFAULT 0;
WHILE i <= DATEDIFF(new.dde,new.dd)
DO
INSERT INTO c4(id_c3,kk,dd) VALUES (new.id,new.kk,DATE_ADD(new.dd,INTERVAL i DAY));
SET i=i+1;
END WHILE;
END

想表c3插入一條數據,並查詢c3與c4rem

INSERT INTO c3(kk,dd,dde) VALUES('ee','2020-04-07','2020-04-08');
select * from c3;
select * from c4;

image.png

相關文章
相關標籤/搜索