0

我有这个 MySQL 片段:

CREATE TABLE MyDates
(
   mydate date
);

CREATE PROCEDURE filldates(dateStart DATE, dateEnd DATE)
BEGIN

  WHILE dateStart <= dateEnd DO
    INSERT INTO MyDates (mydate) VALUES (dateStart);
    SET dateStart = date_format(date_add(dateStart, INTERVAL 1 DAY), '%d.%m.%Y');
  END WHILE;
END;//


CALL filldates('01.01.2013','31.12.2013');

在这里,我尝试为今年的每一天创建一个表格,但它不起作用。

如果没有这种特定的日期格式,它工作得很好。

链接:http ://sqlfiddle.com/#!2/4ae5c

4

1 回答 1

1

我相信您可能正在寻找该STR_TO_DATE()功能。尝试类似的东西

STR_TO_DATE(@dateInGermanFormat, "%d.%m.%Y")

MySQL 文档

于 2017-07-02T23:15:53.867 回答