我正在使用codeigniter,我正在尝试从数据库表中获取所有已过期的行,并且只是那些已过期的行。
该表格包含一个标题为due_date
且格式为datetime
Past Due
代表今天日期之前due_date
的任何内容。因此,例如,如果截止日期是2014年4月25日,而今天的日期是2014年4月26日,那么它将被视为逾期。
我的代码如下:
$query = $this->db->get_where('practice', array('due_date' => date('Y-m-d')));
return $query->result();
但这不会归还今天到期的一切吗?不是我想要的。
对于due_date列
,行看起来像这样2014-04-23 00:00:00
答案 0 :(得分:1)
试试这个:
$query=$this->db
->where('DATE_FORMAT(due_date, "%Y-%m-%d") <',"date('Y-m-d')")
->get('practice');
答案 1 :(得分:0)
快速Google搜索为我提供了一个可行的解决方案:
$query = $this->db->where('practice', array('due_date <' => date('Y-m-d')))->get();
来源:http://ellislab.com/codeigniter/user-guide/database/active_record.html
答案 2 :(得分:0)
$query = $this->db->get_where('practice', array('DATE_FORMAT(due_date, "%Y-%m-%d") <' => date('Y-m-d')));