我有一个表,其中的任务具有“ duedate”(待完成)列和comp_status列。它还有一个用户ID列

0 =不完整
1 =完成

我想执行一个查询,以显示没有今天的到期日但将来的到期日且comp_status = 0的任务,我还想显示到期日为'0000-00-00'的任务

$query = mysql_query("select * from taskdetail where userid='" . $rec['id'] . "' and comp_status='0'  and  duedate > '" . date("Y-m-d") . "' or duedate = '0000-00-00'  order by duedate,importantlevel ASC");


出于某些原因,仍显示某些状态为已完成的任务?
你能帮我吗?

最佳答案

问题是您的语句中有一个OR:or duedate ='0000-00-00'...因此,任何具有这种质量的记录都会显示出来。您需要将其与其他有关截止日期的条件归为一组,如下所示:

$query = mysql_query("select * from taskdetail where userid='" . $rec['id'] . "' and comp_status='0'  and  (duedate > '" . date("Y-m-d") . "' or duedate = '0000-00-00')  order by duedate,importantlevel ASC");


注意括号()

关于php - 节目询问将来的到期日(今天不是今天),尚未完成的到期日为“0000-00-00”的节目,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9332567/

10-10 06:27