直接上代码
CREATE DEFINER=`root`@`localhost` PROCEDURE `PRO_DATE_TABLE`()
BEGIN
DECLARE V_START_DATE DATE DEFAULT DATE_FORMAT('2000-01-01','%Y-%m-%d');
WHILE V_START_DATE <= DATE_FORMAT('2025-12-31','%Y-%m-%d') DO
INSERT INTO 时间(
年月日id
,年月id
,年份id
,年月日
,年份
,年月
)SELECT DATE_FORMAT(V_START_DATE,'%Y%m%d') 年月日id
,DATE_FORMAT(V_START_DATE,'%Y%m') 年月id
,DATE_FORMAT(V_START_DATE,'%Y') 年份id
,CONCAT(YEAR(V_START_DATE) ,'年',MONTH(V_START_DATE),'月',DAY(V_START_DATE) ,'日') 年月日
,CONCAT(YEAR(V_START_DATE),'年') 年份
,CONCAT(YEAR(V_START_DATE) ,'年',MONTH(V_START_DATE),'月') 年月
FROM DUAL;
SET V_START_DATE = DATE_ADD(V_START_DATE,INTERVAL 1 DAY) ;
END WHILE;
END
结果如下