0

如何将此 sql 转换为 codeigniters 活动记录格式

SELECT COUNT(*)
FROM(
SELECT DISTINCT component
FROM `multiple_sample_assay_abc`
WHERE labref = 'NDQA201303001'
)x

我试过这个功能,但它有sql错误

 function getAssayMultipleCount($labref){
        $this->db->count_all('*');
        $this->db->from();
        $this->db->distinct('component');
        $this->db->from('multiple_sample_assay_abc');
        $this->db->where('labref',$labref);
        $query=  $this->db->get();
        return $result=$query->result();
        //print_r($result);
    }
4

2 回答 2

0

尝试这个

function getAssayMultipleCount($labref){
    $this->db->distinct('component');
    $this->db->from('multiple_sample_assay_abc');
    $this->db->where('labref',$labref);
    $query=  $this->db->get();
    $result=$query->result();
    return count($result);
    //print_r($result);
}

您可以在执行查询后计算元素的数量。您不必为此使用子查询

于 2013-05-16T12:13:30.807 回答
0

您正在使用 2 个 $this->db->from() 语句。

于 2013-05-16T12:11:50.410 回答