在Activeigniter中将Active Record与标准SQL查询混合使用

Nyx*_*nyx 7 php mysql sql activerecord codeigniter

现在我正在使用活动记录来访问数据库.但是,附加功能要求我使用标准SQL查询.是否可以在同一查询中同时使用活动记录和标准SQL查询?例如:

$this->db->select(...)
         ->from(...)
         -> .....
         ->query(WHERE CASE ..........);
Run Code Online (Sandbox Code Playgroud)

在标准SQL查询中,我想对CASE使用WHERE子句.如果不在标准SQL中重写整个查询,这是否可行?活动记录查询非常复杂

cab*_*ret 3

据我所知,您无法像您尝试那样将标准 SQL 和活动记录结合起来。

但是,如果需要,您可以手动编写 WHERE 字符串,然后将其提交到 ActiveRecord 类。我不完全确定这是否是您正在寻找的东西,因为我什至从未使用过 CASE,但听起来这可能就是您正在寻找的东西?让我知道!

$where = "name='Joe' AND status='boss' OR status='active'";

$this->db->where($where);
Run Code Online (Sandbox Code Playgroud)