SQl :如果日期为 nul,则获取所有行



>我正在编写一个php函数,其中我接受2个参数,start_dateend_date

我还希望如果两个日期都是 Null,那么这个函数应该返回所有行

这是我的 mysql 查询

select COUNT(*) from demo_meeting where meeting_datetime > "2013-01-01 OR NULL" and  meeting_datetime < "2013-09-10 OR NULL";

如果我将两个日期都用作 NULL,则查询工作正常,如果两个日期都可用,它将返回零行。

请告诉我如何改进此查询,以便如果两个日期都为 NUll,那么它可以返回所有会议

谢谢

if (empty($start_date) &&  empty($end_date)){
     $sql="select COUNT(*) from demo_meeting where meeting_datetime > '$start_date' and  meeting_datetime < '$end_date'";
}else{
     $sql="select COUNT(*) from demo_meeting";
}

richardo给出了很好的解决方案,但您也可以这样做:

select COUNT(*) from demo_meeting
where (meeting_datetime > "2013-01-01" and  meeting_datetime < "2013-09-10") 
      or (meeting_datetime  is null);

最新更新