2

mysql に、開始日と終了日の 2 つの列を持つテーブルがあります。日付を入力して検索できる検索オプションがあります。テキストボックスは空である可能性があるため、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 に答える