Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql左连接数据表服务器端代码点火器_Mysql_Codeigniter_Datatable_Left Join - Fatal编程技术网

Mysql左连接数据表服务器端代码点火器

Mysql左连接数据表服务器端代码点火器,mysql,codeigniter,datatable,left-join,Mysql,Codeigniter,Datatable,Left Join,你能帮我吗 没有使用桌子 选择*订单依据idasc限额0 这是我在模型上的sql代码 private function _get_datatables_query() { $this->db->query("SELECT mainproduk.id, mainproduk.barcode as barcod, mainproduk.nama_produk, mainproduk.nama_alias, mainproduk.

你能帮我吗

没有使用桌子

选择*订单依据
id
asc限额0

这是我在模型上的sql代码

private function _get_datatables_query()
{
    
    $this->db->query("SELECT mainproduk.id,
    mainproduk.barcode as barcod,
    mainproduk.nama_produk,
    mainproduk.nama_alias,
    mainproduk.satuan,
    mainproduk.produk_jadi,
    mainproduk.kemasan,
    mainproduk.min_stok_kemasan,
    mainproduk.status,
    mainproduk.top_item,
    mainproduk.tipe_produk,
    mainproduk.nomor_kemtan,
    coalesce(sum(R.jumlah_pc),0) as omzet
    FROM mainproduk
    LEFT JOIN
    (
        SELECT id,barcode, jumlah_pc
        FROM rincian_order WHERE tipe='po' AND status!='canceled' AND tanggal_kirim BETWEEN '$kemarins' AND '$blnkemarin'
    ) AS R
        ON mainproduk.barcode = R.barcode WHERE status=1 GROUP BY mainproduk.id ORDER BY mainproduk.id ASC");


    $i = 0;

    foreach ($this->column_search as $item) // loop column 
    {
        if($_POST['search']['value']) // if datatable send POST for search
        {
            
            if($i===0) // first loop
            {
                $this->db->group_start(); // open bracket. query Where with OR clause better with bracket. because maybe can combine with other WHERE with AND.
                $this->db->like($item, $_POST['search']['value']);
            }
            else
            {
                $this->db->or_like($item, $_POST['search']['value']);
            }

            if(count($this->column_search) - 1 == $i) //last loop
                $this->db->group_end(); //close bracket
        }
        $i++;
    }
    
    if(isset($_POST['order'])) // here order processing
    {
        $this->db->order_by($this->column_order[$_POST['order']['0']['column']], $_POST['order']['0']['dir']);
    } 
    else if(isset($this->order))
    {
        $order = $this->order;
        $this->db->order_by(key($order), $order[key($order)]);
    }
}
当我使用上述方法时,不会出现任何表格问题,因为录制已关闭

然后我用下面这样的活动记录来更改它,并且有一个错误似乎“COALESCE”不支持这种格式,那么如果“COALESCE(sum(details_order.jumlah_pc),0)as omzet”我删除它,它将显示如下错误

private function _get_datatables_query()
{

    $this->db->select('mainproduk.barcode as barcod, mainproduk.nama_produk, mainproduk.nama_alias, mainproduk.satuan, mainproduk.produk_jadi, mainproduk.kemasan, mainproduk.min_stok_kemasan, mainproduk.status, mainproduk.top_item, mainproduk.tipe_produk, mainproduk.nomor_kemtan, coalesce(sum(rincian_order.jumlah_pc),0) as omzet')
        ->from('mainproduk')
        ->join('rincian_order', 'mainproduk.barcode = rincian_order.barcode', 'left')
        ->where('mainproduk.status =', 1)
        ->group_by('mainproduk.id')
        ->order_by('mainproduk.id', 'ASC');     

    $i = 0;

    foreach ($this->column_search as $item) // loop column 
    {
        if($_POST['search']['value']) // if datatable send POST for search
        {
            
            if($i===0) // first loop
            {
                $this->db->group_start(); // open bracket. query Where with OR clause better with bracket. because maybe can combine with other WHERE with AND.
                $this->db->like($item, $_POST['search']['value']);
            }
            else
            {
                $this->db->or_like($item, $_POST['search']['value']);
            }

            if(count($this->column_search) - 1 == $i) //last loop
                $this->db->group_end(); //close bracket
        }
        $i++;
    }
    
    if(isset($_POST['order'])) // here order processing
    {
        $this->db->order_by($this->column_order[$_POST['order']['0']['column']], $_POST['order']['0']['dir']);
    } 
    else if(isset($this->order))
    {
        $order = $this->order;
        $this->db->order_by(key($order), $order[key($order)]);
    }
}
order子句中的列“id”不明确

请帮忙

`mainproduk.id` 
`mainproduk.barcode`
与其他领域类似 试着把它写成你的语法


如果这不起作用,你能打印查询吗?

我看不出有任何歧义我的问题解决了,但我面临另一个问题,我又问了一个新问题我的问题解决了,但我又面临另一个问题,我又问了一个新问题