我在MYSQL中的100个数据库中捆绑了一个表(即database_1中表的第1行,database_2中表的第2行,...,database_100中表的最后x行)
每当用户访问游戏的朋友时,每个表都有一行。 列是iuin,logtime,beuin。 iuin是访问者的用户ID。 beuin是被访问的朋友的用户ID。 logtime是访问时间。
我想找到一周内访问过的不同朋友。 每天访问的用户大约有300,000个。
但是,当我将代码扩展到计算一周时,我的内存耗尽。 我的代码基本上使用SELECT DISTINCT beuin为每个数据库中的表选择一周进行SQL查询。我将所有beuin存储在一个数组中,如果它尚未存储(所以我计算了被访问的不同朋友),并在最后返回数组的大小。
仅供参考,我无法编辑数据库,例如将不同数据库中的所有表连接到一个表中。
有没有其他方法可以做到这一点? 感谢
答案 0 :(得分:0)
如果没有这个,你很难说出来。但我认为你可以使用mysql解决这个问题。我的快速解决方案: