我有这样表结构
| 身份证|用户标识|父代标识|俱乐部|
| - ------| - ------| - ------| - ------|
| 1个|1个||俱乐部1|
| 第二章|第二章|1个|俱乐部1|
| 三个|三个|1个|俱乐部1|
| 四个|四个|第二章|俱乐部1|
| 五个|五个|第二章|俱乐部1|
| 六个|六个|三个|俱乐部1|
| 七|七|三个|俱乐部1|
| 八个|八个|四个|俱乐部1|
| 九|九|四个|俱乐部1|
| 十个|十个|五个|俱乐部1|
| 十一|十一|五个|俱乐部1|
| 十二|十二|六个|俱乐部1|
| 十三|十三|六个|俱乐部1|
| 十四|十四|七|俱乐部1|
| 十五|十五|七|俱乐部1|
我想选择子项小于2的user_id。请参阅上表user 1、2、3、4、5、6和7,两个子项已完成,因此查询应返回8、9、10、11、12、13、14、15
请参阅上表,此处user_id 1有两个子项2和3,user_id 2有子项4和5,依此类推。
我需要选择子项小于2的user_id
2条答案
按热度按时间sauutmhj1#
您可以按以下步骤操作:
我们选择不在具有两个以上子女的用户列表中的用户。
这是为了让拥有两个以上孩子的用户:
您可以在这里测试:http://sqlfiddle.com/#!9/eb2c70/3
nwlqm0z12#
您可以使用
left join
尝试以下查询吗:在这里试试:http://sqlfiddle.com/#!9/eb2c70/17