doudou3716 2016-08-04 16:58 采纳率: 100%
浏览 103
已采纳

Laravel原始子查询同表

I have a table Users with these columns:

     $users = User::select(['id','name','level','parent','updated_at'])
     ->where('level','>',1)
     ->get();

Output:

      id   name      level       parent   updated_at
      ----+---------+-----------+--------+-------------
      12   Jhon      1           0        2016-02-01
      99   Carl      2           12       2016-02-01

Then: I try this for show column parent how name id associated for example, in second row, show Jhon replacing 12.

I tried this code... Any help to read...

     $users = User::select(['id','name','level',
     DB::raw("SELECT * FROM users WHERE id = users.parent)
     'updated_at'])
     ->where('level','>',1)
     ->get();

Expected Output:

      id   name      level       parent   updated_at
      ----+---------+-----------+--------+-------------
      12   Jhon      1                    2016-02-01
      99   Carl      2           Jhon     2016-02-01
  • 写回答

1条回答 默认 最新

  • drbuowqe02101 2016-08-04 17:05
    关注

    You want a leftJoin to get the parent name:

    $users = User::select(['users.id','users.name','users.level', 'parent.name')
     ->leftJoin('users AS parent','users.parent','=','parent.id')
     ->where('users.level','>',1)
     ->get();
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的