如记录为: 
开始日期           结束日期       地点 
1990-01-02     1992-01-02     南京 
1995-01-02     1996-02-03     上海 
2008-01-01                    北京
查询2008-01-02该天的地点为那里是这样写的:select   *   from   test   
where   '2008-02-01'   between   开始日期   and   结束日期可是最后一条记录是个特殊记录,他的结束日期还没有生成,如何查询2008-02-01的地点是北京呢?

解决方案 »

  1.   

    select       *       from       test       
    where       '2008-02-01'   >=      开始日期       and       结束日期 is null 
      

  2.   

    select       *       from       test      
    where       开始日期 >= '2008-02-01'   AND  ( 结束日期 <=  '2008-02-01' OR  结束日期 is NULL )
      

  3.   

    select     *    from       test            
    where  开始日期   <=   '2008-02-01'  AND (结束日期 >=  '2008-02-01'   OR     结束日期   is   NULL)上面的比較符錯了。