【问题标题】:Codeigniter :fetch records which have unique emailCodeigniter :获取具有唯一电子邮件的记录
【发布时间】:2019-03-09 05:32:13
【问题描述】:
我正在尝试获取具有唯一电子邮件地址的记录(数据库中也有重复的电子邮件)
以下是我的查询,但它会打印所有记录
$this->db->distinct('email');
$this->db->select('*');
$this->db->from('booking');
$query = $this->db->get();
$data['booking']=$query->result();
请帮我解决这个问题。谢谢
【问题讨论】:
标签:
php
sql
codeigniter
activerecord
【解决方案1】:
您可以通过两种方式获得结果:distinct 和 group_by
参考请view这里
$this->db->select('*');
$this->db->from('booking');
$this->db->distinct('email');
$query = $this->db->get();
return $query->result();
您可以在活动记录查询中使用group_by 作为替代方式。
$this->db->select('*');
$this->db->group_by('email');// add group_by
$query = $this->db->get('booking');
return $query->result();
【解决方案2】:
这样做...
$this->db->select('*');
$this->db->from('booking');
$this->db->group_by('email');
$query = $this->db->get();
$data['booking']=$query->result();
它将回显所有唯一的电子邮件地址,除了那些重复的电子邮件。