Where子句 - 选择日期时还包括空格

时间:2012-02-23 10:04:40

标签: sql date conditional where

WHERE
    lipLifeQuoteAppDate BETWEEN @FromDate AND @ToDate
    AND lipLifeQuoteEUdate IS NULL
    AND casCurrentWorkflowID <900
    AND lipStatus <> 'Not proceeding'
    AND lipLifeQuoteCallDate  < @LatestCallDate

我只附加了一个脚本中的where子句,问题出在最后一行。此脚本显示日期范围“ lipLifeQuoteAppDate ”之间的应用程序列表

名为“ lipLifeQuoteCallDate ”的字段显示在收到应用程序后对客户端进行调用的时间。

E.g。约翰史密斯于1月25日提出申请( lipLifeQuoteAppDate ),然后他于2月1日被召唤( lipLifeQuoteCallDate )。

我想在1月1日到31日之间选择应用程序,然后使用( lipLifeQuoteCallDate ),然后我只想显示1月31日之前联系的案例。这就是上面的脚本所做的。我遇到的问题是,我发现第二个日期范围( QuoteCallDate )中的某些字段是空白的,如果有人选择日期,我怎么能包含它们?

谢谢!

2 个答案:

答案 0 :(得分:1)

你是说空白(null?)lipLifeQuoteCallDate计算在指定日期之前?如果是这样的话:

AND ((lipLifeQuoteCallDate < @LatestCallDate) or (lipLifeQuoteCallDate is null))

答案 1 :(得分:1)

假设您要测试lipLifeQuoteCallDate IS NULL何时并允许这些值,即使NULL不是< LatestCallDate,您也可以尝试这个...

WHERE lipLifeQuoteAppDate BETWEEN @FromDate AND @ToDate
  AND lipLifeQuoteEUdate IS NULL
  AND casCurrentWorkflowID < 900
  AND lipStatus <> 'Not proceeding'
  AND (lipLifeQuoteCallDate < @LatestCallDate OR lipLifeQuoteCallDate IS NULL)