防止在CodeIgniter中从数据库中获取duppicate数据

时间:2017-09-21 03:41:00

标签: php mysql codeigniter

我正在尝试从数据库中获取某些类别的数据

这是我在CodeIgniter中的代码

$this->db
    ->select('*')
    ->from($this->table)
    ->join('sites','sites.id = categories_by_site.site_id')
    ->where('categories_by_site.category_id', $categories[0])
    ->or_where('categories_by_site.category_id', $categories[1])
    ->order_by('id', 'ASC')
    ->get()
    ->result();

为了解决这个问题,我简化了我的代码,上面的查询将类别作为搜索过滤器,并用它来从数据库中获取结果。

可以有多个类别过滤器同时进行搜索,这就是我使用or_where()方法的原因。

这个问题,当我得到结果数据时,它在对象数组中有重复的条目行。

任何人都可以建议如何使用上述查询防止从数据库中获取严重数据?

由于

2 个答案:

答案 0 :(得分:1)

您可以使用distinctgroup by

来删除重复值

当您选择所有字段时,group by在我看来更好。按category_id

分组的示例

$this->db->group_by('category_id');

答案 1 :(得分:1)

您可以使用<actionandroid:name="android.intent.action.QUICKBOOT_POWEROFF" />来解决此问题

替换您的代码
group_by