Php 如何在Codeigniter中使用相关子查询进行活动记录查询

Php 如何在Codeigniter中使用相关子查询进行活动记录查询,php,mysql,codeigniter,activerecord,correlated-subquery,Php,Mysql,Codeigniter,Activerecord,Correlated Subquery,我正在努力从不同的表格中获取客户详细信息。我已经创建并测试了这个查询,它运行良好。问题是用户如何将此查询转换为活动记录查询。谢谢你 SELECT c.cust_id, `c`.`cust_contact_name`, `c`.`cust_active_flag`, (select COUNT(`pm`.`cust_id`) from property_master as pm Where pm.cust_id = c.

我正在努力从不同的表格中获取客户详细信息。我已经创建并测试了这个查询,它运行良好。问题是用户如何将此查询转换为活动记录查询。谢谢你

            SELECT c.cust_id, `c`.`cust_contact_name`, `c`.`cust_active_flag`, 
            (select COUNT(`pm`.`cust_id`)  from property_master as pm 
            Where pm.cust_id = c.cust_id) as prop_count,
            (select a.addr_phoneno1 from address as a
            WHERE a.cust_id = c.cust_id AND a.addr_type_flag IN ('C', 'CP')) as cust_phone,
            (select count(ci.cust_id) from customer_inquiry as ci
            WHERE ci.cust_id = c.cust_id) as inquiry_count,
            (select max(inq_date) from customer_inquiry as ci
            WHERE ci.cust_id = c.cust_id) as last_inq_date
            FROM customer as c
            GROUP BY c.cust_ID

CodeIgniter活动记录类不直接支持子查询。您可以使用任何第三方库,如或
$this->db->query()
以执行查询

不过,您可以使用以下方法。但是我建议使用
$this->db->query()


谢谢@Bikram,但我正在寻找除直接使用查询之外的其他选项。您可以使用任何第三方CI库。您能推荐任何人或直接链接查看吗?我已更新了答案,其中有一个库的链接。@hekmat您能帮上忙吗,先生
$this->db->select('c.cust_id, `c`.`cust_contact_name`, `c`.`cust_active_flag`, 
            (select COUNT(`pm`.`cust_id`)  from property_master as pm ' Where pm.cust_id = c.cust_id) as prop_count, (select a.addr_phoneno1 from address as a
            WHERE a.cust_id = c.cust_id AND a.addr_type_flag IN ('C', 'CP')) as cust_phone,
            (select count(ci.cust_id) from customer_inquiry as ci
            WHERE ci.cust_id = c.cust_id) as inquiry_count,
            (select max(inq_date) from customer_inquiry as ci
            WHERE ci.cust_id = c.cust_id) as last_inq_date)
         ->from('customer c');
$this->db->group_by('c.cust_ID');
$result = $this->db->get();