我目前正在像这样将2个表连接在一起:
$transactions = DB::table('transactions')
->leftjoin('stripe_transactions','transactions.transaction_id','=','stripe_transactions.id')
->orderBy('transactions.id', 'desc')
->get();
虽然我的输出未按事务表ID排序。而是由stripe_transactions.id进行排序。
我尝试阅读文档并创建多个查询但结果相同。
正在寻找这样的东西:(由于where
,这不起作用)
$transactions = DB::table('transactions','transactions.id', 'transactions.transaction_id')
->join('stripe_transactions','stripe_transactions.id')
->where('transactions.transaction_id','=','stripe_transactions.id')
->orderBy('transactions.id', 'desc')
->get();
运行该查询时出现错误:
“ on子句”中的“未知列”
为解决问题,我应该在表transactions
中提到一个名为id
的列和一个名为transaction_id
的列。我想通过交易表中的id
对表进行排序。
答案 0 :(得分:1)
我已经修改了查询中的join
和where
子句。请尝试以下查询:
$transactions = DB::table('transactions')
->join('stripe_transactions','transactions.transaction_id','=','stripe_transactions.id')
->select('transactions.id', 'transactions.transaction_id')
->orderBy('transactions.id', 'desc')
->get();