求一条SQL语句MySQL的

看灬灰机 2017-11-13 02:14:05
表中有两个字段, u_refcode (每个用户的推荐码) u_refid (推荐人【也可以改为推荐码】可以为null,就是谁推荐的)
怎么从一个用户的信息中(按照 id 也好推荐码也好) 查询出自己推荐的有哪些人,有多少人。 并且查询出推荐过的人又推荐哪些人共多少人,最多到三级(自己算一级,自己推荐的算二级,自己推荐的又推荐算三级),哪位大神给个帮忙写两条SQL语句,一个查询二级,一个查询三级。
...全文
161 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
看灬灰机 2017-11-14
  • 打赏
  • 举报
回复
引用 6 楼 zjcxc 的回复:
问题描述不清楚 u_refcode  (每个用户的推荐码)   ----------------------- 这个是给谁用的? 假设有一条记录: 1 , 张三, 是表壳 张三的推荐码是1, 还是表壳张三推荐了1这个人?   u_refid  (推荐人【也可以改为推荐码】可以为null,就是谁推荐的) ---------------------- 同样的,你说这里可以改成推荐码或 null, 那么 1,null 这样的记录是代表什么? 1, 张三 这样的记录代表什么? 1,1 又代表什么?
谢谢,我找到答案了。 你看看对吗? 一级子集:select * from table where parentId=5 二级子集:select * from table where parentId in(select id from table where parentId=5) 三级子集:select * from table where parentId in(select id from table where parentId in(select id from table where parentId=5))
zjcxc 2017-11-14
  • 打赏
  • 举报
回复
问题描述不清楚 u_refcode  (每个用户的推荐码)   ----------------------- 这个是给谁用的? 假设有一条记录: 1 , 张三, 是表壳 张三的推荐码是1, 还是表壳张三推荐了1这个人?   u_refid  (推荐人【也可以改为推荐码】可以为null,就是谁推荐的) ---------------------- 同样的,你说这里可以改成推荐码或 null, 那么 1,null 这样的记录是代表什么? 1, 张三 这样的记录代表什么? 1,1 又代表什么?
看灬灰机 2017-11-13
  • 打赏
  • 举报
回复
引用 4 楼 yujianchun123 的回复:
这样的话应该是根据单个账户来获取他底下的二级 和三级吧? 那样的话 二级就 不需要关联了,
每个用户都可以是一级, 所有不用树路径,二级好查,但是三级怎么查呢。因为二级查出来的数据不一定是多少个,
yujianchun123 2017-11-13
  • 打赏
  • 举报
回复
这样的话应该是根据单个账户来获取他底下的二级 和三级吧? 那样的话 二级就 不需要关联了,
看灬灰机 2017-11-13
  • 打赏
  • 举报
回复
引用 2 楼 yujianchun123 的回复:
你 是要做成tree吗? 获取到二级之后,可以继续关联 一次 user 表来获取3级,
没有树路径,只有单一的上级推荐
yujianchun123 2017-11-13
  • 打赏
  • 举报
回复
你 是要做成tree吗? 获取到二级之后,可以继续关联 一次 user 表来获取3级,
看灬灰机 2017-11-13
  • 打赏
  • 举报
回复
我自己的思路是, select u.*,s.* from user u ,user s where s.邀请人= u.邀请码 获得全部二级人员, 然后把二级人员的所有邀请码提取出来,接下来不知道怎么写了。是不是用or || 连接全部的邀请码。 注意在一张表。

56,687

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧