如何在SQL中创建未来日期?例如,我希望能够使用我的日期范围,并在下个月显示所有内容(采购订单),然后再显示两个月后的内容等。我已将NOW()用于当前日期/时间,但此并不能帮助我在所有的记录显示下个月等SQL Server:创建未来日期
感谢
这是一个SQL查询,在SQL Server 2008 R2做。
如何在SQL中创建未来日期?例如,我希望能够使用我的日期范围,并在下个月显示所有内容(采购订单),然后再显示两个月后的内容等。我已将NOW()用于当前日期/时间,但此并不能帮助我在所有的记录显示下个月等SQL Server:创建未来日期
感谢
这是一个SQL查询,在SQL Server 2008 R2做。
如果你使用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())
您可以使用负数去回以及前进。还有很多其他的增量可以使用,例如年,星期,星期,季度,毫秒等。
这是什么RDBMS? –
你将如何使用它?您是否需要针对日期列表进行外部联合,还是仅将它用作搜索过滤器? –