PHP/SQL最大数组大小问题的替代解决方案

PHP/SQL最大数组大小问题的替代解决方案,php,mysql,sql,arrays,memory,Php,Mysql,Sql,Arrays,Memory,我在MYSQL的100个数据库中绑定了一个表,即数据库_1中的表的第1 x行,数据库_2中的表的第2 x行,数据库_100中表的最后x行 每当用户访问朋友玩游戏时,每个表都有一行。 列为iuin、logtime和beuin。 iuin是访问者的用户id。 beuin是被访问的朋友的用户id。 日志时间是访问的时间 我想找到在一周内拜访过的不同朋友的名字。 每天有大约30万不同的用户访问 然而,当我将代码扩展到计算一周后,内存就用完了。 我的代码基本上使用SELECT DISTINCT beuin

我在MYSQL的100个数据库中绑定了一个表,即数据库_1中的表的第1 x行,数据库_2中的表的第2 x行,数据库_100中表的最后x行

每当用户访问朋友玩游戏时,每个表都有一行。 列为iuin、logtime和beuin。 iuin是访问者的用户id。 beuin是被访问的朋友的用户id。 日志时间是访问的时间

我想找到在一周内拜访过的不同朋友的名字。 每天有大约30万不同的用户访问

然而,当我将代码扩展到计算一周后,内存就用完了。 我的代码基本上使用SELECT DISTINCT beuin为每个数据库中的表执行SQL查询。我将所有的beuin存储在一个数组中,如果它还没有存储,那么我会统计访问过的不同朋友,并在最后返回数组的大小

仅供参考,我无法编辑数据库,例如将不同数据库中的所有表合并到一个表中

有没有其他方法可以让我这样做?
谢谢

如果没有这个,你很难说出你的想法。但是我认为你可以用mysql解决这个问题。我的快速解决方案:

创建表-创建表如果不存在用户\u idsuser\u id INT not NULL结果0 PRIMARY KEYUNIQUE;在第一个db中 截断用户ID 运行100个查询,如INSERT IGNORE INTO db1.users\u id从db1.table1中选择不同的user\u id; 从用户标识中选择计数*;
将其存储在数组中并获取数组大小的目的是什么?因此我只计算不同的用户。理想情况下,这些表不会绑定到不同的数据库中,因此我可以只选择DISTINCT beuin并返回mysql\u num\u行。