You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL Server:如何将表1数据复制到含日期列的表2并插入当前日期

解决SQL Server插入数据时的GETDATE()错误问题

你的错误是因为语法使用不当:你把GETDATE()放在了FROM子句后面,SQL Server会将其识别为表名,但实际上不存在名为GETDATE的表,因此抛出“invalid object name 'GETDATE'”的错误。

正确的做法是将GETDATE()作为SELECT查询的一个字段,让每条从table1取出的记录都带上当前日期,插入到table2的date列中。以下是两种可行写法:

1. 明确指定字段(推荐)

这种写法更安全,即便后续表结构变更(比如新增字段),也不容易出错:

INSERT INTO table2 (列1, 列2, ..., date)
SELECT 列1, 列2, ..., GETDATE()
FROM table1;

只需把上述代码中的列1, 列2, ...替换为table1实际的所有字段名即可。

2. 简化写法(仅适用于特定场景)

如果table2的列顺序恰好是table1的所有列 + 最后一个date列,可以使用这种简化写法:

INSERT INTO table2
SELECT *, GETDATE()
FROM table1;

内容的提问来源于stack exchange,提问作者Mohtesham

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 04:45:45