我有一个名为 tableA
的表,其中一个字段是 TrasactionDate
。我有一个名为 myfixeddate
的特定日期(比如说它是 2014-03-08
)。
我想在 4 个月内获得 TransactionDate
,但只能在我的固定日期 myfixeddate
('2014-03-08'
) 之前来自 tableA
。假设我的查询应该给出 '2014-03-06','2014-03-05','2014-02-01',...
。
但是当我使用以下查询时:
SELECT TrasactionDate
FROM tableA
WHERE datediff(mm,Transdate,myfixeddate) < 4
它以两种方式(之前和之后)给出 TransactionDate
。这意味着结果给 '2014-03-10','2014-03-18'
和想要的像 '2014-03-05',...
.
能否请您告诉我如何防止这种情况以及我需要使用什么代码才能在一个方向上获取 TransactionDate
?
最佳答案
你可以这样尝试:
Select TrasactionDate from tableA
where [TrasactionDate] between DATEADD(month, -4, myfixeddate) and myfixeddate
关于sql - 使用日期函数获取仅小于特定日期的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25785284/