我有下表:
| Id | referral |
|----|----------|
| 1 | 0 |
| 2 | 0 |
| 3 | 1 |
| 4 | 2 |
| 5 | 1 |
当用户的“引用”列中有0时,表示他没有单击任何引用链接。如果它有一个数字,它指的是另一个用户的id。
所以现在我只想要这种输出:
| Id | referral | referred_count |
|----|----------|----------------|
| 1 | 0 | 2 |
| 2 | 0 | 1 |
| 3 | 1 | 0 |
| 4 | 2 | 0 |
| 5 | 1 | 0 |
有没有办法只用一个mysql查询就得到这种输出?我试过很多东西,但都卡住了。
2条答案
按热度按时间siv3szwd1#
一个简单的方法使用相关子查询:
omtl5h9j2#
你也可以用一个
JOIN
表的自身:输出: