Codeigniter :获取具有唯一电子邮件的记录

Posted

技术标签:

【中文标题】Codeigniter :获取具有唯一电子邮件的记录【英文标题】:Codeigniter :fetch records which have unique email 【发布时间】: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();

请帮我解决这个问题。谢谢

【问题讨论】:

您使用明显错误。看到这个链接***.com/questions/656622/… CodeIgniter: How To Do a Select (Distinct Fieldname) mysql Query的可能重复 【参考方案1】:

您可以通过两种方式获得结果:distinctgroup_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(); 

它将回显所有唯一的电子邮件地址,除了那些重复的电子邮件。

【讨论】:

以上是关于Codeigniter :获取具有唯一电子邮件的记录的主要内容,如果未能解决你的问题,请参考以下文章

唯一验证不起作用,我该怎么办?

使用 codeigniter 在数据库中获取具有相同值的列

Outlook 插件 - 获取具有特定邮件 ID 的电子邮件

选择具有唯一标识列的重复项

将表单文件附加到电子邮件,Codeigniter

消息:未定义的索引:获取列名时(两个具有相同列的表)Codeigniter