Laravel:在增加的日期中显示视图中两个表的数据

时间:2017-11-20 11:53:28

标签: php database laravel

我有两张桌子。一个是卖出数据,另一个是银行存款取款数据。我可以显示销售表的数据。并且还可以显示银行的数据。但我想显示像这样的数据

17 Nov 2017 Sells Data.....
16 Nov 2017 banks Data....
15 Nov 2017 Sells Data.....
15 Nov 2017 banks Data....

但现在我得到了这样的数据

15 Nov 2017 Sells Data.....
16 Nov 2017 Sells Data.....

15 Nov 2017 banks Data....
17 Nov 2017 banks Data....

如何将数据显示为我想要的数据

代码:

$sell = Sells::orderBy('id', 'desc')->get();
$bank = Banks::orderBy('id', 'desc')->get();

通过此获取数据。但无法按我的意愿显示数据。

1 个答案:

答案 0 :(得分:0)

如果两个表都具有完全相同的列,则可以使用union

执行此操作
$sells = DB::table('sells')->select('*');
$banks = DB::table('banks')->select('*')
    ->union($sells)
    ->latest()
    ->get();

但如果它们不相同,则必须选择相同的列:

$sells= DB::table("sells")
    ->select("sells.name"
      ,"sells.price"
      ,"sells.created_at");
$banks = DB::table("banks")
    ->select("banks.name"
      ,"banks.price"
      ,"banks.created_at")
    ->unionAll($sells)
    ->orderBy('created_at', 'DESC')
    ->get();