使用 postgres 将 Excel 日期格式转换为常规日期

1 sql postgresql excel date date-arithmetic

我将 csv 文件加载到 DBeaver postgres 数据库中,其中日期表示为 5 位数字。(41827、35267、39444 等)我知道这些在 Excel 中的格式为自 1900 年 1 月 1 日以来的天数。是否可以在编辑器中编写查询以将它们转换为 mm/dd/yyyy?

我尝试过使用 SELECT/INTERVAL/CAST 类型的函数,但无法完全弄清楚语法。

示例:架构:profiles,表:account_transactions,列名称:date_activated,单元格值:41827(varchar)

GMB*_*GMB 5

Excel 日期表示自 1899 年 12 月 30 日以来的天数(嗯,大约 - 早期年份不准确)。

在 Postgres 中你可以这样做:

date '1899-12-30' + myexceldate::int * interval '1' day
Run Code Online (Sandbox Code Playgroud)

其中myexceldate是保存 Excel 编号的文本列的名称。