DROP TABLE IF EXISTS calander_temp;
CREATE TABLE `calander_temp` ( `date` date DEFAULT NULL);
DELIMITER $$
DROP PROCEDURE IF EXISTS dt$$
CREATE PROCEDURE dt(i DATE,j DATE)
BEGIN
DECLARE nowdate date DEFAULT NOW();
DECLARE endtmp date DEFAULT NOW();
set nowdate = DATE_FORMAT(i,'%Y%m%d');
set endtmp = DATE_FORMAT(j,'%Y%m%d');
WHILE nowdate<endtmp
DO
INSERT INTO `calander_temp` VALUES(nowdate);
set nowdate = DATE_ADD(nowdate,INTERVAL 1 DAY);
END WHILE;
END$$
DELIMITER ;
call dt('2016-01-01','2018-02-05');
select * from `calander_temp`;