【发布时间】:2017-10-29 11:36:29
【问题描述】:
我一直在尝试显示没有重复的行,但查询无法正常工作。我认为问题在于一对多的关系,因为一个“intervaloHorario”有很多“citas”。因此,例如,我只想显示:“从 8:00 到 15:00(这是一个间隔时间)”到日期(cita)“27/08/1988”。我该怎么办?
控制器
$this->Fechacita_Model->delete_duplicaterow();
型号
public function delete_duplicaterow() {
$this->db->select('
c.intervaloHorario','ci.cita'
);
$this->db->from('intervaloshorarios c');
$this->db->join('citas ci', 'ci.idCitas = c.idIntervaloHorario','left');
$this->db->group_by('c.idIntervaloHorario','ci.cita');
$query = $this->db->get();
return $query->num_rows();
}
模型(编辑)
$this->db->select(array('c.intervaloHorario', 'ci.cita'));
$this->db->distinct();
$this->db->from('intervaloshorarios c');
$this->db->join('citas ci', 'ci.idCitas = c.idIntervaloHorario', 'left');
$this->db->group_by('c.idIntervaloHorario', 'ci.cita');
$query = $this->db->get();
$this->db->last_query();
return $query->num_rows();
数据库
当前数据库
截图
当前列表(无序列表但重复仍然存在)
【问题讨论】:
-
尝试
$this->db->distinct($columnName);其中$columnName是您要区分的列。 -
这样,查询会一直显示相同的重复行
标签: php mysql codeigniter grocery-crud