如何在不删除其他记录的情况下过滤日期范围内 SQL 服务器中的特定记录?

How to filter a specific record in SQL Server within in the date range without removing other records?

我正在使用 SSMS 2017。

以下是来源 table,

从上面table我只想过滤'i'条记录

其中日期相差>=6个月满足以下条件(date2 <= dateadd(MONTH, +6, date1 - datepart(MONTH, date1) -1)) 结果如下,

任何人的任何帮助将不胜感激。

这是你想要的吗?

select t.*
from t
where name <> 'i' or
      date2 <= dateadd(month, +6, date1 - datepart(month, date1) -1))

我不太确定你的情况应该是什么,但这就是你的问题。

根据文中逻辑:

select t.*
from t
where name <> 'i' or
      date2 <= dateadd(month, +6, date1)