使用 Laravel 的查询生成器或 Eloquent 将表与临时表进行内连接

我有一个相当复杂的查询,我将简化它以使其更易于阅读:


SELECT `temp_table`.field1, `temp_table`.field2 FROM

(A TEMPORARY TABLE MADE OUT OF A SELECTION QUERY) AS temp_table

INNER JOIN table ON temp_table.field1 = table.id 

WHERE table.some_field = 'something'

我目前为此使用 RAW 查询,但现在我想使用 Laravel 中的查询生成器或 Eloquent ORM 重写它。我是 Laravel 的新手。因此,任何想法或帮助都是值得赞赏的。


慕工程0101907
浏览 156回答 1
1回答

潇湘沐

尝试使用fromSubDB::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',所以你可以用它来命名临时表......
打开App,查看更多内容
随时随地看视频慕课网APP