直升机, 我试图通过日历表在两个日期之间获得产品,我与产品有关系。
我把表格的数据放在了:
据我所知,如果我做一个foreach并且我每天都在检查,我可以得到它,但我不希望这样,我想用mysql正确地做到这一点
这是我目前正在执行的查询,并没有给我预期的结果。这是name the my page
$start_date = fecha_mysql_slash($this->input->get('start_date'));
$end_date = fecha_mysql_slash($this->input->get('end_date'));
$calendars = new Calendar();
$calendars->select("*")
->where('day BETWEEN "'.$start_date.'" AND "'.$newEndDate.'" and availability > 0')
->include_related("producto",NULL,TRUE,TRUE)
->group_by("producto_id")
->get()->all;
现在我将尝试向我解释,通过表格我得到开始日期和结束日期,所以如果存在于“日期”字段中,我必须从开始日期到结束日期检查日历表。还有哪个可用性大于0.,对于这个查询,我无法得到它。
目前没有错误,问题是我得到的产品,当我指示的日期在表格和字段“日”中不存在时
例如我通过2017-03-13和2017-03-25的日期进行查询,我认为我不明白这个问题,因为我得到了产品ID,从2017-03-13开始没有这些产品的记录。
我希望你能帮助我,
非常感谢你。答案 0 :(得分:0)
你有:
$end_date = fecha_mysql_slash($this->input->get('end_date'));
和
->where('day BETWEEN "'.$start_date.'" AND "'.$newEndDate.'" and availability > 0')
$ end_date是与$ newEndDate不同的变量。将$ newEndDate更改为$ end_date,它应该可以正常工作。