我在一个数据库中拥有大约11,000个团队,每个团队的名单上可以有20到30名玩家。每个球员名单上的所有球员都累积到大约225,000名球员。
所有球队都包括以下职位。 QB,RB,WR,TE,PK,DEF
我需要每周为每个团队确定以下最高职位。 (1)QB (2)RB的 (3)WR的 (1)TE (1)PK (1)Def (1)Flex(RB,WR或TE的最高剩余部分)
目前我有一个MySQL查询,它会根据每周最高到最低的分数对每个团队进行排序,然后我使用PHP函数来识别上面列出的每个顶级玩家,我将它们作为逗号分隔列表进行内爆将它们保存到数据库中的字段。
整个过程大约需要20分钟。
你有什么方法可以消除PHP的东西并在MySQL查询中完成所有这些工作吗?我最初循环遍历每个团队,对它们进行排序并返回要由PHP处理的值,但每次查询,即使在.1秒时也会增加11K次。只需更改我的查询即可立即归还所有内容,我的时间几乎减半。