我想建议用户可能想要关注的社区,例如 Facebook 上的“您可能认识的人”或 Twitter 上的“要关注的人”。
例如:
社区:1,2,3,4,5,6,7,8,9,10,11,12,13,14
用户 A 如下:1,2,3,10,11,12,13,14
用户 B 跟随:1,2,4,10,11,12,13,14
用户 H 关注:1,4,8
用户 C 关注:5,6,7
用户 D 关注:5,6,7
用户 E 关注:5,6,7
用户 F 关注:5,6,7
用户 G 关注:5,6,7
用户 I 关注:5,6,7
用户 J 关注:5,6,7
让我们向用户 A 推荐他可能想要关注的社区:
4,8,5,6,7,9
用户 A 可能比其他人更可能想要关注社区 4,因为用户 B 关注它并且他们有非常相似的兴趣。
问题是我的查询不会返回至少没有一个用户作为用户 A 关注另一个社区的社区。在这种情况下,只会返回:
4,8
我的查询 - SQL Fiddle: http ://bit.ly/MF9Lve
我该如何解决?