2

我在 mysql 中有一个表,有两列开始日期和结束日期。我有一个搜索选项,我可以在其中输入日期并进行搜索。文本框可能是空的,所以我使用了 isnull 函数。现在我实现的功能是我们必须输入确切的开始日期和结束日期,然后只返回值。我想返回数据介于开始日期和结束日期之间

以下是存储过程中的代码。

 FROM Promo_ODM_ShipWithout
WHERE
 StartDate LIKE  ISNULL(@StartDate,StartDate) 
                AND ISNULL(EndDate,-1) Like ISNULL(ISNULL(@EndDate,EndDate)  ,-1) 
                AND  SKUCode Like ISNULL(@SkuCode,SKUCode)

                 ORDER BY Id
                    )RowSet
         WHERE ROW_NUM >@LeftStart
4

1 回答 1

0
SELECT
  *
FROM 
  Promo_ODM_ShipWithout
WHERE
(
  @StartDate IS NULL OR EndDate >= @StartDate
)
AND
(
  @EndDate IS NULL OR EndDate <= @EndDate 
)
于 2012-10-31T10:53:48.353 回答