我有一个相当复杂的查询,我将简化它以使其更易于阅读:SELECT `temp_table`.field1, `temp_table`.field2 FROM(A TEMPORARY TABLE MADE OUT OF A SELECTION QUERY) AS temp_tableINNER JOIN table ON temp_table.field1 = table.id WHERE table.some_field = 'something'我目前为此使用 RAW 查询,但现在我想使用 Laravel 中的查询生成器或 Eloquent ORM 重写它。我是 Laravel 的新手。因此,任何想法或帮助都是值得赞赏的。
1 回答
潇湘沐
TA贡献1816条经验 获得超6个赞
尝试使用fromSub
DB::query()->fromSub(function ($query) {
$query->selectRaw('your query to get the temp_table');
}, 'temp_table')->join('table','table.id','=','temp_table.field1')
->where('table.some_field','something');
'fromSub'方法将一个字符串作为第二个参数,它在sql中是'as',所以你可以用它来命名临时表......
- 1 回答
- 0 关注
- 155 浏览
添加回答
举报
0/150
提交
取消