gpt4 book ai didi

php - 在sql查询中获取递归数据

转载 作者:行者123 更新时间:2023-11-28 23:07:57 24 4
gpt4 key购买 nike

我有一个表 user,它有 user_name 和 manager name。我想得到 manager ='test' 的用户名。我想得到 ramya 作为经理和 reportee 的 reportee 的用户

users table 
SNO user_name manager
1 vani Ramya
2 ramya geetha
3 priya ramya
4 mani ramya
5 latha vani
6. hema Anitha

我想获取 ramya 和 ramya 的报告人 vani、priya 和 mani 的名字,并获取让 vani 担任经理的 latha,让 ramya 担任经理。我想要 ramya、vani、priya、mani 和 latha

最佳答案

您可以使用以下查询:

select a.user_name from 
users a left join users b
on a.manager=b.user_name
where a.user_name='Ramya' or a.manager='ramya' or b.manager='Ramya'

输出:

| user_name |
|-----------|
| latha |
| vani |
| priya |
| mani |
| ramya |

SQL fiddle :http://sqlfiddle.com/#!9/f57b06/10

P.S :我以前从未使用过 Laravel,但在阅读了一些文档后,我认为可以在其中以这种方式编写查询

$users = DB::table('users as a')
->select('a.user_name')
->leftJoin('users as b', 'a.manager', '=', 'b.user_name')
->where('a.user_name','Ramya')
->orwhere('a.manager','Ramya')
->orwhere('b.manager','Ramya')
->get();

关于php - 在sql查询中获取递归数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46682559/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com