mysql - 如何使用 AND 加入 Codeigniter 方式

标签 mysql codeigniter codeigniter-2

如何将此 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

最佳答案

您需要将 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或者 CI 3.x Query Builder Class

关于mysql - 如何使用 AND 加入 Codeigniter 方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46810949/

相关文章:

mysql - 用多个选择器选择多条记录还限制1条?

php - 如何在 mysql codeigniter 事件记录中启用反引号

codeigniter - 如何在codeigniter中使用重定向显示验证错误?

php - 在 Modular Codeigniter 中,一个模块的 Controller 如何/应该如何调用另一个模块的函数?

php - 严重性 : 8192 Message: Methods with the same name as their class will not be constructors in a future version of PHP;

mysql - 如何在codeigniter中导出完整的数据库名称

php - 带有 PDOStatement 的 PDO 在出现 "mysql server gone"错误时重新连接

mysql - 日期比较周和年格式

mysql - 如何在codeigniter mysql中合并两个相同的行并显示不同的id行

javascript - 无法让自动完成功能与 bootstrap 和 php codeigniter 一起使用