SQL - 使用 SQL 脚本 运行 的日期向数据库 Table 添加列

SQL - Adding a Column to Database Table with the Date of the SQL Script Run

我有 R 编程背景,但现在需要每周学习 SQL 以实现 CSV 的自动化。我目前在 SQL 模式下使用 Microsoft Access 2010。

我希望提取现有的 table 并应用过滤器(如下所示),然后向其添加一个标题为 "Report_Date" 的新列,显示脚本的日期 运行上。

我目前的代码如下:

SELECT Activity_Report.* INTO [Weekly Report]
FROM Activity_Report
WHERE ((([Activity_Report].[on_date])<DateAdd('m',3,Now()) 
And ([Activity_Report].[on_date])>DateAdd('m',-1,Now())))
ALTER TABLE Weekly_Report
ADD Report DATE;

在 ALTER TABLE 函数和过滤成功之前,这一切都很好。当我 运行 上面的 SQL 脚本时,我现在收到以下错误:

Syntax error (missing operator) in query expression.

我不熟悉此错误,因此非常感谢任何有关我的代码错误的帮助。谢谢

假设您知道 insert intoselect into 之间的区别,您根本不需要 alter table 声明。

您可以简单地将当前日期和时间添加为 select:

的一部分
SELECT Activity_Report.*
      ,Now() AS Report
INTO [Weekly Report]
FROM Activity_Report
WHERE [Activity_Report].[on_date] < DateAdd('m',3,Now())
    AND [Activity_Report].[on_date] > DateAdd('m',-1,Now())

(我也去掉了很多不必要的括号,Access 比较喜欢...)

您不能 运行 在 Access 中的一个查询中使用两个命令。

首先 运行 SELECT INTO 查询。

然后运行 DDL 查询。