1)首先是一个简单的三级分销(邀请与被邀请),表结构是酱紫的

CREATE TABLE `d_user_invite` (
`invite_id` int(11) NOT NULL AUTO_INCREMENT,
`user_id` int(11) NOT NULL DEFAULT '',
`phone` varchar(50) DEFAULT NULL,
`invite_user_id` int(11) NOT NULL DEFAULT '',
`invite_user_phone` varchar(50) DEFAULT NULL,
`add_date_time` int(11) NOT NULL,
PRIMARY KEY (`invite_id`),
KEY `ind_invite_userlD` (`user_id`) USING BTREE,
KEY `ind_invite_inviteUserID` (`invite_user_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

2)插入几条测试数据

3)然后 sql 是酱紫的(自己 join 自己,同表自 join)

SELECT
`a`.`user_id` AS `uid`,
`a`.`phone`,
`a`.`invite_user_id` AS `suid`,
`a`.`invite_user_phone` AS `sphone`,
`b`.`invite_user_id` AS `ssuid`,
`b`.`invite_user_phone` AS `ssphone`
FROM
`d_user_invite` `a`
LEFT JOIN `d_user_invite` `b` ON `b`.`user_id` = `a`.`invite_user_id`
WHERE
`a`.`user_id` <> `b`.`invite_user_id`

4)查询结果

还是觉得蛮神奇,蛮强大的,记录一下~

单行显示三级分销记录(同表自join)的更多相关文章

  1. linux下history命令显示历史指令记录的使用方法

    Linux系统当你在shell(控制台)中输入并执行命令时,shell会自动把你的命令记录到历史列表中,一般保存在用户目录下的.bash_history文件中.默认保存1000条,你也可以更改这个值 ...

  2. asp显示多条记录的代码

    asp显示多条记录的代码 仅供参考 <%for i=1 to RS.PageSize%> <% if RS.EOF then exit for end if %> <tr ...

  3. android - TextView单行显示...或者文字左右滚动(走马灯效果)

    条件 TextView单行显示,文字左右滚动(走马灯效果)实现条件: 实现单行设置固定宽度或者设置权重都行 代码 TextView滚动必须写下面几个属性 android:singleLine=&quo ...

  4. PHP九大接口视频教程( 支付宝,QQ,短信接口,微信接口开发, 支付宝即时到账接口开发三级分销全套)

    PHP九大接口视频教程(  支付宝,QQ,短信接口,微信接口开发, 支付宝即时到账接口开发三级分销全套) 需要的联系我:QQ: 1844912514 PHP九大接口视频教程(  支付宝,QQ,短信接口 ...

  5. 微商城三级分销源码公众号开发 微分销 C#源码

    需要源码,请加QQ:858-048-581 ,可以查看演示 运行环境:vs2012+ sql2008r2 [什么是微分销] 微分销是助力企业进军移动电商,完善分销体系搭建微信分销系统.基于微信平台,搭 ...

  6. php如何实现三级分销

    Q: 项目要实现三级分销;对于数据库的设计和用户注册后给所有上级(最多三级)返利 但是一点头绪都没有,请大神帮忙给个思路! 如果是直接注册给奖励20元如果是通过二维码或者链接进入的注册页面 找到上级 ...

  7. css 文本单行显示溢出时出现省略号 多行显示溢出时出现省略号 首行缩进

    一.文本单行显示溢出时出现省略号 二.文本多行显示溢出时出现省略号(这种样式只能在webkit和移动端使用,包括小程序,不能设置固定高度) 三.首行缩进两字符 text-indent: 2em; 四. ...

  8. Android EditText不可编辑单行显示能滑动查看内容

    遇到问题 有时为了节约界面控件,可以界面的美观,我们会使用单行显示 singleLine,如果使用 Enable = false 输入框文字呈现灰色,并且也无法操作. 想要实现的效果是,单行显示,不能 ...

  9. Android中_TextView属性的XML详解 包括单行显示等等。

    <pre name="code" class="html">属性名称 描述 android:autoLink 设置是否当文本为URL链接/email ...

随机推荐

  1. vue的生命周期(又称钩子函数)----以及vue1.0版本与vue2.0版本生命周期的不同

    vue生命周期 1. vue1.0版本与vue2.0版本生命周期的不同 vue1.0版本生命周期图示 图1  vue1.0版本生命周期 vue1.0版本的生命周期: init 实例创建之前 creat ...

  2. Codeforces Round #423 (Div. 2, rated, based on VK Cup Finals) C. String Reconstruction 并查集

    C. String Reconstruction 题目连接: http://codeforces.com/contest/828/problem/C Description Ivan had stri ...

  3. JSP(2)—绝对路径与相对路径、配置Servlet与Servlet注解

    一.绝对路径和相对路径 ①开发时建议使用据对路径,使用绝对路径肯定没有问题,但是用相对路径可能会有问题. 在由Servlet转发到JSP页面时,此时在浏览器地址栏显示Sevvlet路径,若JSP页面的 ...

  4. django之MTV模型(urls,view)

    今天就进入到python最重要的阶段了django框架,框架就像胶水一样会将我们前面学的所有知识点粘合在一起,所以以前有哪些部分模糊的可以看看前面的随笔.本篇主要介绍djangoMTV模型,视图层之路 ...

  5. Linux软件开发常用的软件包(持续更新中)

    下面是Linux开发常用的软件包: 软件包的名称 作用描述 安装方式 build-essential   sudo apt-get install build-essential policycore ...

  6. Ubuntu远程连接MySQL(connection refused)解决方法

    一.判断ubuntu是否开启防火墙 sudo ufw status 开放防火墙3306端口 sudo ufw allow 3306 二.查看3306端口是否打开  注意:红色框框表示3306绑定的ip ...

  7. .Net转Java.08.format

    %[index$][标识][最小宽度]转换方式 [index$]可以用于表示对第index个参数进行格式化, // Java代码 String s1=String.format("%3$s, ...

  8. 使用CGlib实现Bean拷贝(BeanCopier)

    在做业务的时候,我们有时为了隔离变化,会将DAO查询出来的Entity,和对外提供的DTO隔离开来.大概90%的时候,它们的结构都是类似的,但是我们很不喜欢写很多冗长的b.setF1(a.getF1( ...

  9. tmux终端工具的简单使用

    Linux上管理和运行进程除了程序级别的守护进程之外,经常用到的有比如nohup &的方式,以及screen会话的方式,而Tmux正是一个非常优秀的终端进程管理的软件,和GNU screen类 ...

  10. JavaScript中Object值合并方法

    原文:https://www.cnblogs.com/fullstack-yang/p/8085206.html ------------------------------------ 前言:在日常 ...