我正在尝试在表格中插入昨天的日期。对于当前日期,我有以下查询:
INSERT INTO FACILITY(Facility, LastPurge, CreatedBy, Active, RowVersionStamp)
VALUES ('AAA', CURRENT_TIMESTAMP, 'engineer', '1', '7');
对于上一个日期,我已经尝试过:
INSERT INTO FACILITY(Facility, LastPurge, CreatedBy, Active, RowVersionStamp)
VALUES ('AAA', DATE_SUB(NOW(), INTERVAL 1 DAY, 'engineer', '1', '7');
以上,对我不起作用。 谢谢,谢谢您的帮助。
答案 0 :(得分:0)
使用GetDate()-1-它也会给您时间,但是如果您只需要日期部分,则可以使用cast(GetDate()-1作为日期)
INSERT INTO FACILITY(Facility, LastPurge, CreatedBy, Active, RowVersionStamp)
VALUES ('AAA', GetDate() - 1, 'engineer', '1', '7');
答案 1 :(得分:0)
INSERT INTO FACILITY(Facility, LastPurge, CreatedBy, Active, RowVersionStamp)
VALUES ('AAA', DATEADD(day, -1,getdate()), 'engineer', '1', '7');
答案 2 :(得分:0)
将DATEADD()
函数与GETDATE()
结合使用:
INSERT INTO FACILITY(Facility, LastPurge, CreatedBy, Active, RowVersionStamp)
SELECT 'AAA', DATEADD(DAY, -1, GETDATE()), 'engineer', '1', '7'
如果Active
和RowVersionStamp
具有数字类型,则无需使用单引号。如果LastPurge
的类型为DATE
而不是DATETIME
,则使用CAST()
或CONVERT()
转换为日期格式。