首页 > 解决方案 > 导入一年的每日日期

问题描述

有没有一种简单的方法可以将包含给定年份的所有日期的列表导入到我的 Python 文件中?我需要将一年中的每一天(01.01.2018----31.12.2018)存储到一个列表中,这样我就可以将该列表导入到 SQL 数据库表中的列中。

我已经谷歌几个小时了,没有找到任何东西,但应该有一种方法可以直接导入它......

有谁知道?非常感谢!

标签: pythonmysqldatabasesqlitecalendar

解决方案


使用 Sqlite,您可以直接在 SQL 中执行此操作,无需 python,这要归功于递归 CTE:

CREATE TABLE days(day TEXT PRIMARY KEY) WITHOUT ROWID;
INSERT INTO days(day)
  WITH RECURSIVE alldays(day) AS
       (VALUES ('2018-01-01')
        UNION ALL
        SELECT date(day, '+1 day')
        FROM alldays
        LIMIT 366 -- Take leap years into account
       )
  SELECT day FROM alldays WHERE day <= '2018-12-31';
-- List days in October:
SELECT day FROM days WHERE day BETWEEN '2018-10-01' AND '2018-10-31' ORDER BY day;

推荐阅读