如何在一个SQL连接(DATEPART和DATEADD)中同时使用日期和月份?

时间:2019-05-04 10:04:36

标签: c# sqlconnection dateadd datepart qsqldatabase

我已经在C#Windows窗体中创建了一个与sql数据库有连接的应用程序。 连接条件必须显示7个月前减去10天的数据。

我想要一个示例,例如7个月* 30 = 210天-10 = 200天, 结果必须是200天前的数据。

但是我的问题是一天无法正常工作,因为只有6个月有30天,另外6个月有31天。所以我需要解决这个问题的方法。

我为SQL连接创建的select仅用于返回7个月前的数据,但我不能减去10天。这是我的代码:

   SqlDataAdapter sda1 = new SqlDataAdapter("select* from [dbo].[Customers] 
   where ((DATEPART(m, DATEADD ( MONTH , 7 , SIXM)) = DATEPART(m,getdate()) 
   and  resetdate  is null) 
   or (DATEPART(m, DATEADD ( MONTH , 7 , resetdate)) = DATEPART(m,  getdate())
   and DATEPART(m, DATEADD ( MONTH , 7 , SIXM))-1 = DATEPART(m,getdate()) ))  ", con);

0 个答案:

没有答案