如何使用 AND 加入 Codeigniter 方式

How to use AND in JOIN the Codeigniter way

如何将此 MySQL 查询转换为 Codeigniter 查询?

SELECT *
FROM categories
LEFT JOIN user_category_subscriptions ON 
    user_category_subscriptions.category_id = categories.category_id
    and user_category_subscriptions.user_id =1

根据文档 here

$query = $this->db->query('SELECT name, title, email FROM my_table');

foreach ($query->result() as $row)
{
    echo $row->title;
    echo $row->name;
    echo $row->email;
}

echo 'Total Results: ' . $query->num_rows();

ORM:

如果您想使用 ORM,您可以遵循此 Whosebug Link

中给出的建议

您需要将 AND 部分放在 Codeigniter 的 join() 中

$query = $this->db  ->select('t1.*')
                    ->join('user_category_subscriptions t2', 't1.category_id =t2.category_id AND t2.user_id =1','left')
                    ->get('categories t1');
return ($query->num_rows())?$query->result():false;

在查询后使用这一行,您可以仔细检查查询是否正确生成:

echo $this->db->last_query();die;

更多关于 CI 2.x Active Record Class and alternatively CI 3.x Query Builder Class