我要选择我的3个表并按相同的列名排序
例如:
table 1: id, name
table 2: id, table_1_id, process, datetime
table 3: id, table_1_id, process, datetime
我想选择id为表1的表2和表3,然后按日期时间排序。我怎么能用拉勒维尔的口才做到呢?谢谢
我想发生的事的例子。
id|name |process|datetime 2 |dina |Making |2019-7-15 3 |mark |Molding|2019-7-14 1 |ares |Folding|2019-7-13

最佳答案

我用union()解决了这个问题

$table2 = DB::table('table1')
           ->join('table2', 'table2.table1_id', '=', 'table1.id')
           ->orderBy('table2.datetime', 'DESC')
           ->select('table1.*', 'table2.*');

$table = DB::table('table1')
          ->join('table3', 'table3.table1_id', '=', 'table1.id')
          ->orderBy('table3.datetime', 'DESC')
          ->select('table1.*', 'table3.*')
          ->union($table2)->get();

谢谢大家的帮助!

关于php - 用具有相同列名的3个表排序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57032775/

10-11 04:59
查看更多