在数据库中选择两个数据-CodeIgniter3

时间:2018-08-16 20:17:22

标签: php codeigniter-3

我从数据库中提取数据时遇到问题。

我的应用程序基于CodeIgniter 3和AngularJS。

我的数据库中有两个表:

1)个域 2)自然搜索

在域和organic_search中,我有view_id列-它们彼此相关。

我的问题:我连接到数据库,当我转到给定的域URL时,我获得了域ID(从表域中获得),但是,organic_search表中的数据却没有集。我不知道如何将domains.iD关系与domains.viewId = organic_search.viewId连接起来。

在我的代码下面:

控制器domains.php

{
    $this->load->model('admin/analytics_model');
    $result = $this->analytics_model->get_by_domain_id($id);
    echo '{"records":' . json_encode( $result ) . '}';
}

Controller analytics.php

public function index($id = false)
{
    $result = $this->analytics_model->get($id);
    echo '{"records":' . json_encode( $result ) . '}';
}

model analytics_model.php

public function get_by_domain_id($id)

{
        $this->db->where('id', $id);
        $q = $this->db->get('organic_search');
        $q = $q->result();

        return $q;
}

1 个答案:

答案 0 :(得分:1)

使用Join

$this->db->join('domains AS d', 'd.viewId = o.viewId'); 
$this->db->where('o.id', $id);
return $this->db->get('organic_search AS o')->result();