php - Laravel:查询生成器连接多表

标签 php mysql laravel laravel-5.1

我有 3 张 table :

users_tb 包含列:

user_id (pk)
user_name

device_tb 包含列:

user_id (fk)
device_id (pk)
device_name

part_tb 包含列:

deive_id (fk)
part_id (pk)
part_name
user_buy (fk)

关系:

device_tb一对多part_tb(1个设备可以创建多个部分)

user_tb一对多device_tb(1个人可以创建到多台设备)

user_tb 一对多part_tb(1 人可以购买多台设备)

如何计算每个用户所有设备使用的总部件

示例:设备:PC1 - 由部件创建:鼠标、键盘、CPU - 由用户创建:Allen

结果:用户Allen使用了3个零件

我对我的英语感到非常抱歉:((

最佳答案

您可以尝试使用以下查询

  $val = DB::table('users_tb')->select(array("users_tb.user_name", DB::raw('count(part_tb.part_id) as count_part')))->leftJoin('device_tb', 'users_tb.user_id', '=', 'device_tb.user_id')->leftJoin('part_tb', 'device_tb.device_id', '=', 'part_tb.deive_id')->get();

这段代码会帮助你..

关于php - Laravel:查询生成器连接多表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37895052/

相关文章:

php - Laravel - Eloquent attach() 不适用于模型

MySQL:获取所有匹配行的计数以及结果集

php - 如何在 Laravel 中显示渲染时间/页面加载时间?

php - 调用未定义函数define()

php - 在 MySql 中将 2 行计数加在一起

php - UTF8 字符未在 Drupals HTML 中打印

php - Laravel 5 |违反完整性约束 : 1452

php - 使用未知数量的参数创建 Laravel Eloquent Query

php - PHP 中内置了哪些异常子类?

MySQL:查询并连接两个表