繁体   English   中英

如何将此原始查询 SQL 转换为 Laravel Eloquent:)

[英]How to transform this raw SQL query into Laravel Eloquent :)

如何将此原始查询 SQL 转换为 Laravel Eloquent:)

SELECT
    a_tables.`id` AS `a_id`,
    b_tables.`id` AS `b_id`,
    c_tables.`id` AS `c_id`
FROM
    laravel.a_tables AS P
        LEFT JOIN laravel.b_tables AS L ON L.`a_tables_id` = `a_id` AND L.user_id=2
        LEFT JOIN laravel.c_tables AS I ON I.`a_tables_id`  = `a_id` AND I.`b_tables_id` = `b_id` AND I.user_id=2
    WHERE
        P.user_id = 2;

尝试这个

DB::table("laravel.a_tables as p")
         ->leftJoin("laravel.b_tables as l", function($join){
              $join->on("l.a_tables_id", "=", "p.id")
              ->where("l.user_id", "=", 2);
          })
         ->leftJoin("laravel.c_tables as i", function($join){
              $join->on("i.a_tables_id", "=", "p.id")
              ->where("i.b_tables_id", "=", "l.id")
              ->where("i.user_id", "=", 2);
          })
         ->select("p.id as a_id", "l.id as b_id", "i.id as c_id")
         ->where("p.user_id", "=", 2)
         ->get();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM