Laravel中如何使用join关联查询实现多表数据关联?

2026-04-06 07:072阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计346个文字,预计阅读时间需要2分钟。

Laravel中如何使用join关联查询实现多表数据关联?

Laravel 使用 JOIN 查询关联两表,示例代码如下:

Laravel中如何使用join关联查询实现多表数据关联?

php$fbaInventoryTb=(new App\Model\Amz\Fba\InventoryReport)->getTable();$productTb=(new App\Model\Amz\Product)->getTable();$twInventoryTb=(new App\Model\TWUsa\TwusaInventory)->getTable();$qry=SELECT * FROM $fbaInventoryTb JOIN $productTb ON $fbaInventoryTb.product_id=$productTb.id JOIN $twInventoryTb ON $fbaInventoryTb.product_id=$twInventoryTb.product_id;

laravel join关联查询

1、两表关联

$fbaInventoryTb = (new \App\Model\Amz\Fba\InventoryReport)->getTable(); $productTb = (new \App\Model\Amz\Product)->getTable(); $twInventoryTb = (new \App\Model\TWUsa\TwusaInventory)->getTable(); $qry = \DB::table($fbaInventoryTb); $qry->select($fbaInventoryTb.'.*') ->where($fbaInventoryTb.'.ec_id',1) ->leftjoin($productTb, $productTb.'.sku', '=', $fbaInventoryTb.'.sku') ->addSelect($productTb.'.id as goods_id',$productTb.'.sku as mfn', $productTb.'.ec_id as pro_ec_id'); // ->where($productTb.'.ec_id',1); //不应该在此处排除 product 表的ec_id // return $qry->toSql(); $res = $qry->get()->whereIn('pro_ec_id',[1, null] );//leftJion 最后排除不符合条件的

2、三表关联

$qry = \DB::table($twInventoryTb); $qry->select($twInventoryTb.'.*') ->leftjoin($fbaInventoryTb, $fbaInventoryTb.'.fnsku', '=', $twInventoryTb.'.product_sn') ->addSelect($fbaInventoryTb.'.ec_id') ->where($fbaInventoryTb.'.ec_id',1); $qry->LeftJoin($productTb, $productTb.'.sku', '=', $fbaInventoryTb.'.sku') // ->where($productTb.'.ec_id',1) ->addSelect($productTb.'.id as goods_id', $productTb.'.sku as mfn', $productTb.'.ec_id as pro_ec_id'); $res = $qry->get()->whereIn('pro_ec_id', [1, null]);

到此这篇关于laravel join 关联查询代码实例的文章就介绍到这了,更多相关laravel join 关联查询内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!

本文共计346个文字,预计阅读时间需要2分钟。

Laravel中如何使用join关联查询实现多表数据关联?

Laravel 使用 JOIN 查询关联两表,示例代码如下:

Laravel中如何使用join关联查询实现多表数据关联?

php$fbaInventoryTb=(new App\Model\Amz\Fba\InventoryReport)->getTable();$productTb=(new App\Model\Amz\Product)->getTable();$twInventoryTb=(new App\Model\TWUsa\TwusaInventory)->getTable();$qry=SELECT * FROM $fbaInventoryTb JOIN $productTb ON $fbaInventoryTb.product_id=$productTb.id JOIN $twInventoryTb ON $fbaInventoryTb.product_id=$twInventoryTb.product_id;

laravel join关联查询

1、两表关联

$fbaInventoryTb = (new \App\Model\Amz\Fba\InventoryReport)->getTable(); $productTb = (new \App\Model\Amz\Product)->getTable(); $twInventoryTb = (new \App\Model\TWUsa\TwusaInventory)->getTable(); $qry = \DB::table($fbaInventoryTb); $qry->select($fbaInventoryTb.'.*') ->where($fbaInventoryTb.'.ec_id',1) ->leftjoin($productTb, $productTb.'.sku', '=', $fbaInventoryTb.'.sku') ->addSelect($productTb.'.id as goods_id',$productTb.'.sku as mfn', $productTb.'.ec_id as pro_ec_id'); // ->where($productTb.'.ec_id',1); //不应该在此处排除 product 表的ec_id // return $qry->toSql(); $res = $qry->get()->whereIn('pro_ec_id',[1, null] );//leftJion 最后排除不符合条件的

2、三表关联

$qry = \DB::table($twInventoryTb); $qry->select($twInventoryTb.'.*') ->leftjoin($fbaInventoryTb, $fbaInventoryTb.'.fnsku', '=', $twInventoryTb.'.product_sn') ->addSelect($fbaInventoryTb.'.ec_id') ->where($fbaInventoryTb.'.ec_id',1); $qry->LeftJoin($productTb, $productTb.'.sku', '=', $fbaInventoryTb.'.sku') // ->where($productTb.'.ec_id',1) ->addSelect($productTb.'.id as goods_id', $productTb.'.sku as mfn', $productTb.'.ec_id as pro_ec_id'); $res = $qry->get()->whereIn('pro_ec_id', [1, null]);

到此这篇关于laravel join 关联查询代码实例的文章就介绍到这了,更多相关laravel join 关联查询内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!