Как использовать count с функцией limit в codeigniter - PullRequest
0 голосов
/ 20 июня 2019

У меня есть какая-то модель, подобная этой,

public function get_payment_method($date_from, $date_to){     
        $op_status = array('settlement','capture');

        $this->db->select('op_payment_code,COUNT(order_id) as total,pc_caption');
        $this->db->from("(dashboard_sales)");
        $this->db->where('order_date BETWEEN "'. date('Y-m-d 00:00:00', strtotime($date_from)). '" and "'. date('Y-m-d 23:59:59', strtotime($date_to)).'"');
        $this->db->where_in('op_status',$op_status);
        $this->db->where('pc_caption is NOT NULL', NULL, FALSE);
        $this->db->group_by('op_payment_code');
        $query = $this->db->get();
        return $query->result();
    }

, но когда я проверяю свою базу данных, в order_id появляются повторяющиеся данные, как показано ниже,

enter image description here

вопрос в том, как сделать count только один раз в order_id?поэтому, если есть тот же order_id, он не будет засчитан

1 Ответ

0 голосов
/ 20 июня 2019

Вы можете попробовать это:

$this->db->select('op_payment_code, COUNT(DISTINCT order_id) as total, pc_caption', false);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...