【问题标题】:complex sql join table复杂的sql连接表
【发布时间】:2016-04-04 02:50:15
【问题描述】:

我有 4 张桌子
chart, chart_detail, customer, produk
像这样

我想运行 sql 命令来列出 chart 表中的数据

cart 表与chart detailcustomer 表连接起来没有问题 因为

chart.id = chart_detail.id_chart
chart.id_customer = customer.id

DB::table('chart')
    ->join('customer', 'chart.id_customer', '=', 'customer.id')
    ->join('chart_detail', 'chart.id', '=', 'chart_detail.id_chart')->get(); 

但我有问题无法访问nama_produk
(在chart_detail 表中只有id_produk)...所以我需要加入chart 表和produk

DB::table('chart')
    ->join('customer', 'chart.id_customer', '=', 'customer.id')
    ->join('produk', 'produk.id', '=', 'chart_detail.id_produk')
    ->join('chart_detail', 'chart.id', '=', 'chart_detail.id_chart')->get(); 

但我得到这样的错误

Column not found: 1054 Unknown column 'chart_detail.id_produk' in 'on clause'

因为在chart 表中没有可用的id_produk
id_produkchart_detail 表中可用

不知道怎么解决

【问题讨论】:

    标签: mysql sql laravel laravel-4


    【解决方案1】:

    您的连接有问题,因此出现有关未知列的错误。试试下面的代码:

    DB::table('chart')
        ->join('customer', 'chart.id_customer', '=', 'customer.id')
        ->join('chart_detail', 'chart.id', '=', 'chart_detail.id_chart')
        ->join('produk', 'produk.id', '=', 'chart_detail.id_produk')->get(); 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-16
      相关资源
      最近更新 更多