我有以下代码,我试图从4个不同的表中获得基于一个订单号的信息。我正在使用codeigniter,使用下面的代码,我得到了同一个记录的副本。当数据库中只有一行时,基本上会显示两行。

function get_orders($user_id)
{
    $this->db->select('*');
    $this->db->from('Orders');
    $this->db->join('Order_Options', 'Orders.orderNumber = Order_Options.orderNumber');
    $this->db->join('Order_Products', 'Orders.orderNumber = Order_Products.orderNumber');
    $this->db->join('Order_Status', 'Orders.order_status = Order_Status.id');
    $this->db->where(array('user_id' => $user_id));

    $query = $this->db->get();
    return $query->result();
}

我从codeigniters在线用户手册上得到这个代码。我自己添加的唯一行是wherereturn行。

最佳答案

在控制器的构造函数中启用PROFILER

$this->output->enable_profiler(TRUE);

这将显示Debug下面的所有详细信息,包括执行的VIEW。在phpmyadmin和debug中使用该查询。

09-30 13:13
查看更多