如何在SQL中创建未来的日期?例如,我想使用我的日期范围并仅显示下个月(采购订单)的所有内容,然后再为两个月后的订单等创建一个。我已经使用fn NOW()获取当前日期/时间,但这对于显示下个月的记录没有帮助。
谢谢。
这是在SQL Server 2008 R2中执行的SQL查询。
如何在SQL中创建未来的日期?例如,我想使用我的日期范围并仅显示下个月(采购订单)的所有内容,然后再为两个月后的订单等创建一个。我已经使用fn NOW()获取当前日期/时间,但这对于显示下个月的记录没有帮助。
谢谢。
这是在SQL Server 2008 R2中执行的SQL查询。
如果您使用MySQL,可以使用:
SELECT date_col FROM your_table
WHERE date_col BETWEEN NOW() AND DATE_ADD(NOW(), INTERVAL 1 MONTH)
对于 MS-SQL(应该可以工作):
SELECT date_col FROM your_table
WHERE date_col BETWEEN GETDATE() AND DATEADD(Month, 1, GETDATE())
对于Oracle数据库(应该可以这样做):
SELECT date_col FROM your_table
WHERE date_col BETWEEN SYSDATE AND add_months(SYSDATE, 1)
您可以使用DATEADD
函数来创建相对于另一个日期的日期。以下调用将生成一个比现在晚一个月的日期:
DATEADD(month, 1, GETDATE())