gpt4 book ai didi

sql - 使用 sql 查询在 Access 中填充从 1980-01-01 到今天的日期列

转载 作者:行者123 更新时间:2023-12-02 09:34:44 25 4
gpt4 key购买 nike

我有一个名为“日期”的 Access 表,并且有一个名为“日期”的单列(格式为“日期”)。我需要将 1980 年 1 月 1 日到今天的日期在列中每次增加 1 天。 1980-01-01 将位于第一行。

如何通过 sql 查询来完成此操作?

最佳答案

如果您有合适的数字表,则可以使用 Access SQL 添加这些日期。

INSERT INTO dates ([Date])
SELECT CDate(n.the_number)
FROM tblNumbers AS n
WHERE n.the_number BETWEEN 29221 AND 42037;

或者从tblNumbers中的1开始并添加偏移量...

INSERT INTO dates ([Date])
SELECT CDate(n.the_number + 29220)
FROM tblNumbers AS n
WHERE n.the_number BETWEEN 1 AND 12817;

但是,如果您没有合适的数字表,则需要创建一个并填充它。这与您开始时的问题类似,仅加载普通数字而不是日期。

最初的任务非常简单,我将使用一次性的 VBA 过程而不是 Access SQL。这个加载我的日期表的时间不到 2 秒,其中包含所需的 12,817 个日期值:

Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim dte As Date
Set db = CurrentDb
Set rs = db.OpenRecordset("dates", dbOpenTable, dbAppendOnly)
With rs
For dte = #1/1/1980# To Date
.AddNew
![Date].Value = dte
.Update
Next
.Close
End With

关于sql - 使用 sql 查询在 Access 中填充从 1980-01-01 到今天的日期列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28278115/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com