我有4个单独的select查询,每个查询都会生成一个具有相同列的表,如id和created_at。 我想要union,然后按created_at排序并获取每个id的最近的created_at。所以我还需要使用group by。Laravel union几个表并按列排序结果
从文档的结果(select ..) union (select ...)
的例子,但我无法弄清楚如何做类似
DB::select(DB::raw(id, MAX(created_at))
->from($query1->union($query2)->union($query3)->union($query4)))
->groupBy('id')
->orderBy('created_at');
或类似的东西。
它导致不同的查询。我想“选择*从(联合...)组编号”,我得到(选择*从表组ID)联合(...) – Victor
@Victor现在检查?编辑我的回答 – prateekkathal