如何在此 SQL 查询中显示过去 20 天

本文关键字:显示 过去 查询 SQL | 更新日期: 2023-09-27 17:55:51

我想将最后的条件更改为过去 20 天。这是 ?(日期时间.现在.年份 ) - 20 ?

  sqlT1 = "SELECT ROW_NUMBER() OVER(ORDER BY ID_KEY DESC) AS RN,* From(Select distinct f.FACILITY_NAME, ID_KEY, [BATCH] AS column1, [IMPORTDATE], [DATEBILLED], [RX], [DATEDISPENSED], [DAYSUPPLY], [PAYTYPE], [NPI], [PHYSICIAN], [COST], [QUANTITY], [MEDICATION], A.[NDC], " +
                        " case when (COST > 0 AND DAYSUPPLY > 0) then (COST / DAYSUPPLY) * 30 else 0 end [30DayCost] , [PATIENTNAME], [ROUTEOFADMIN], [INVOICECAT], [COPAY], [BRAND], [TIER], [SKILLLEVEL], [STAT] STATUS, [LASTTASKDATE],SEQNO, 'please bring to the attention of the administrator.' SUBST_INSTRUCTIONS  , f.FACILITY_ID " +
                        " FROM [LMI].[T_CHARGES] A Left Outer Join PBM.FACILITY f on A.FACILITYNPI = f.FACILITY_NPI  " +
                        " Where COST > 500 " +
                        " AND [TIER] = 'T1' and month(A.DATEDISPENSED) = " + DateTime.Now.Month + " and year(A.DATEDISPENSED) = " + DateTime.Now.Year + "" +
                        sqlWhere + " AND f.FACILITY_ID IN (" + selected + ")";

如何在此 SQL 查询中显示过去 20 天

好吧,

我不知道如何为您更改代码,但通常在SQL中,您使用getdate()来获取今天的日期,并使用dateadd(d,-20,getdate())来获取20天前,因此请使用

(t-sql):

 testingdate between dateadd(d,-20,getdate()) and getdate()

在您的 where 子句中

要获取 20 天前的日期,您可以使用 sql 函数 DATEADD:

WHERE A.DATEDISPENSED >= DATEADD(dd,-20,GetDate())