0

モデルのコードは public function get_report6_8($type, $filter_id=NULL) { $values = array($filter_id); です。

$select = '';       
if ($filter_id && $type == 'jh') {
    $select = 'and natbuild_rep.jh_rep_id = ?';
}
else if ($filter_id && $type == 'natbuild') {
    $select = 'and natbuild_principal.id = ?';
}

$sql = "select sum(total) total
    from (
        select value_of_sale total
        from lead
        left join natbuild_rep
        on natbuild_rep.mobile = lead.mobile
        left join natbuild_store
        on natbuild_store.id = natbuild_rep.store_id
        left join natbuild_principal
        on natbuild_principal.store_group = ifnull(natbuild_store.store_group2, natbuild_store.store_group)
        where (status = 1 OR status = 2)
        and value_of_sale is not null
        {$select}
        group by lead.id
    ) temp";

return $this->db->query($sql, $values)->row();
}

コントローラーのコードは $data['report8'] = $this->lead_report_model->get_report6_8($type, $this->input->post('filter')); です。

表示されているコードは

  • 総計: $total)) ? $report8->合計: 0;?>
  • 次のようなクエリを実行すると

    select sum(total) total
    
    from (
    
        select value_of_sale total
        from lead
        left join natbuild_rep
        on natbuild_rep.mobile = lead.mobile
        left join natbuild_store
        on natbuild_store.id = natbuild_rep.store_id
        left join natbuild_principal
        on natbuild_principal.store_group = ifnull(natbuild_store.store_group2, natbuild_store.store_group)
    where (status = 1 OR status = 2)
        and value_of_sale is not null
        and natbuild_principal.id in (18, 30, 31, 35, 33, 25, 23, 15, 8, 6, 5, 29, 7, 3, 2, 1, 24, 27, 22, 21, 20, 26, 36)
    group by lead.id ) temp
    

    結果は正しいです。$select に値の配列を送信する方法を教えてください。これは、他のすべての値を含むドロップダウンから総計を選択したときに発生します。

    4

    1 に答える 1

    0

    ドロップダウンは複数選択であるため、値を含む配列が渡されます。

    使用する

     implode(",", $dropdownSelections);
    
     $select = 'and natbuild_principal.id in ('.implode(",", $dropdownSelections).')';
    
    于 2013-01-24T03:19:12.673 に答える