如何 运行 在 Laravel 7 中正常查询,而不是使用 Eloquent

How to run normal query in Laravel 7, not using Eloquent

有时,我可以使用 Eloquent 在 laravel 中进行复杂的登录。 所以,我需要 运行 一个大的原始查询。 怎么做? 示例:我需要 运行

Insert Into ..............
       Select..............
       Join....
       Join....
       Where...............
       ...............................................................

您可以使用 DB Facade,此外您还可以使用它的 raw 方法。

DB::table('tableName')->selectRaw()...

https://laravel.com/docs/master/queries#raw-expressions

如果这对您来说不够原始,您可以简单地定义您的 sql 查询:

$query = "Insert Into ..............
       Select..............
       Join....
       Join....
       Where...............
       ................... ";

并将其插入 DB::select($query);

您可能正在寻找此解决方案。 你可以用它来解决你的问题。

$yourComplexQuery = "
    Insert Into ..............
    Select..............
    Join....
    Join....
    Where...............
   ...............................................................
";
DB::select($yourComplexQuery);