我们的业务是分层销售人员关系,有时也称为全层。它3深。从单个表格中提取3层相关数据
用英语:Salesman-A-tier有他们下的人,我们称他们为推销员-B-层,而B-tier在他们的推销员C-层中有推销员。
表:
id, name, agentId
1011, bob, 0
1012, jim, 1011
1013, tim, 1011
1014, sam, 1011
1015, dav, 1013
1016, kim, 1013
1017, sal, 1015
1018, vin, 1015
(ID是代理的标识,被称为的agentId领域是salesmans上游剂)
我需要的是在所有这一切下的推销员的列表(案例鲍勃或编号= 1011),3层深。
我已经得到了2级的深度,但之后得到了抑制。 找到一个更好的方法我看不到我自己,我寻求帮助。
我的SQL至今:
选择c.id,c.name,c.agentId从 推销员S其中s.agentId = 1011或 s.agentId =(从 选择ss.agentId推销员ss其中ss.id = s.agentid)
这让我2层深,但我不能得到第三。
任何帮助表示赞赏。 在此先感谢, 马修
这不能解决你的问题,但你真的应该考虑规范化你的表,这样你就不必为这样简单的数据做枯燥乏味的查询。 拔出业务代表id并制作一个只有id和业务代表id的表。 – 2009-12-24 01:59:10
这是干什么用的数据库? – 2009-12-24 02:25:24