使用MySQL循环插入数据(mysql循环插入)

MySQL循环插入数据是非常有用的功能,主要可以按照一定的规律从给定的某个数字或日期开始,一直往后插入,直到指定的数值或日期为止,而且可以最大程度的减少代码的重复性。

在MySQL中可以使用循环插入的形式从而节省开发的时间,让人们更容易实现插入大量数据,也可以降低编写代码的麻烦。例如,可以使用循环插入,将给定的数字1到100插入到某一列中,只需要编写一次而已如下面的MySQL语句:

DELIMITER $$
CREATE PROCEDURE loop_insert()
BEGIN
DECLARE i INT DEFAULT 0;
WHILE i
INSERT INTO table_name(col_name) values(i);
SET i = i + 1;
END WHILE;
END $$
DELIMITER ;

执行这段MySQL循环插入语句,就可以将从1到100插入到表中:

CALL loop_insert(); 

MySQL循环插入还可以将日期序列插入到数据表中。例如,在MySQL中,使用DATE_FORMAT()函数可以将指定的日期格式复制到其它表中,如下所示:

INSERT INTO table_name (date_column)
SELECT DATE_FORMAT('2014-01-01', '%Y-%m-%d');

上面的MySQL插入语句可以将2014年1月1日插入到某个日期列中。而使用循环插入,可以将2014年1月1日到2014年1月31日的每一天都插入到某个日期列中:

DELIMITER $$
CREATE PROCEDURE loop_date_insert()
BEGIN
DECLARE i INT DEFAULT 0;
WHILE i
INSERT INTO table_name (date_column)
SELECT DATE_FORMAT('2014-01-01' + interval i DAYS, '%Y-%m-%d') ;
SET i = i + 1;
END WHILE;
END $$
DELIMITER ;

执行这段MySQL循环插入语句,就会将上述31天的日期都插入到某个日期列中:

CALL loop_date_insert(); 

以上就是MySQL循环插入数据的基本原理,有了它,在MySQL中插入大量数据就容易多了。


数据运维技术 » 使用MySQL循环插入数据(mysql循环插入)