【问题标题】:Convert SQL to laravel 5 ORM将 SQL 转换为 laravel 5 ORM
【发布时间】:2015-09-21 05:30:06
【问题描述】:

我是 laravel 新手,请帮助我学习 主要思想我有两个表(用户,引脚) “用户” 表包含所有员工,包括管理员员工(经理)普通员工。 每个员工可以在“pins”

中拥有多个pin

我想获取特定管理员的所有员工及其引脚数。

这是有效的查询,但我希望在 ORM 中使用它。

SELECT admin.email ,p.user_id ,COUNT(p.user_id) 
    FROM users as u 
      join users as admin on u.id = admin.admin_id 
      join pins as p on admin.id = p.user_id 
     and u.id = 2 
   GROUP BY admin.email,p.user_id

【问题讨论】:

  • 嗨,你能分享一下你目前尝试过的 PHP/laravel 代码吗?谢谢。

标签: php sql laravel orm eloquent


【解决方案1】:

要在 laravel 中使用 ORM,请将您的查询替换为这个。

$users = DB::table('users')
          ->join('users', 'u.id', '=', 'admin.admin_id')
          ->join('pins', 'admin.id', '=', 'p.user_id')
           ->select(DB::raw('count(*) as user_count,p.user_id'),admin.email,p.user_id)
->and(u.id = 2)
->groupBy('admin.email')
->groupBy('p.user_id)->get();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-09
    • 2017-08-23
    • 1970-01-01
    • 1970-01-01
    • 2016-07-01
    • 2020-09-12
    相关资源
    最近更新 更多