Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用Laravel';s查询生成器或Eloquent将表与临时表进行内部联接_Php_Mysql_Laravel_Eloquent_Laravel Query Builder - Fatal编程技术网

Php 使用Laravel';s查询生成器或Eloquent将表与临时表进行内部联接

Php 使用Laravel';s查询生成器或Eloquent将表与临时表进行内部联接,php,mysql,laravel,eloquent,laravel-query-builder,Php,Mysql,Laravel,Eloquent,Laravel Query Builder,我有一个相当复杂的查询,为了便于阅读,我将对其进行简化: 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' 我目前正在为此使用一个原始查询,

我有一个相当复杂的查询,为了便于阅读,我将对其进行简化:

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'
我目前正在为此使用一个原始查询,但现在我想使用查询生成器或Laravel中的雄辩ORM重写它。我是拉雷维尔的新手。因此,任何想法或帮助都将受到感谢。

尝试使用

方法“fromSub”将字符串作为第二个参数,它在sql中是“as”,因此您可以使用它来命名临时表

 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');