在codeigniter中获取两个日期范围之间的行

时间:2016-06-28 06:54:18

标签: php mysql codeigniter

我编写了以下查询,以便在两个给定的日期范围内从数据库中获取行。但是它没有获取任何数据。此查询中出现了什么问题以及如何修复

$from=date_format(date_create($this->input->post('from_date')),'ym');
$to=date_format(date_create($this->input->post('to_date')),'ym');
               $this->db->from('tab1');
               $this->db->join('tab2','tab1.party_id=tab2.party_id','inner');
               $this->db->where("EXTRACT(YEAR_MONTH FROM tab2.incoming_call_date ) BETWEEN {$from} AND {$to}");
               $query = $this->db->get();
               $data = $query->result();
               return $data;

1 个答案:

答案 0 :(得分:1)

ym将输出为年份和月份的2位数。但是在mysql中你使用EXTRACT(YEAR_MONTH...输出为4位数年份。首先使用大写Y

匹配此项
$from=date_format(date_create($this->input->post('from_date')),'Ym');
$to=date_format(date_create($this->input->post('to_date')),'Ym');