我正在使用本地MAMP连接并在phpMyadmin中创建数据库。我有一个Fantasy Football数据库,我想返回所有提交的阵容组合,其中NFL球员在比赛中的工资小于或等于50,000,并且Fantasy Points Scored大于或等于200。因此,有效阵容由QB、RB 1、RB 2、WR 1、WR 2、WR 3、TE、FLEX和DST。只有当阵容中9名球员的总成本小于或等于50,000时,才能提交有效的阵容(例如,QB花费10,000,RB 1花费5,000,RB 2花费6,000等,用于所有9个时隙,其必须小于或等于50,000)。每个阵容插槽必须有一个独特的球员,即使有多个跑回来和宽接收器插槽。FLEX插槽可以是RB,WR,或TE,但再次,不可能是其他位置的玩家。我试图获得比赛的结果,并返回得分超过200的所有可能的有效阵容的数据集。我的数据库没有规范化。我确实知道如何将其归一化,如果这会使结果更好/更快,我可以。但就目前而言,下面是一个指向示例数据集https://docs.google.com/spreadsheets/d/1ECXtOj3MALgQNVMrr1wOlNso2iipqg2jzP6Ty9DZ0JA/edit?usp=sharing的链接。我尝试了各种SQL SELECT语句,但它们都冻结了,我无法得到结果。我尝试过限制返回的结果数,但没有效果。下面是我想创建的基本SELECT语句:
SELECT DISTINCT QB, QB.Fpts, RB1, RB1.Fpts, RB2, RB2.Fpts, WR1, WR1.Fpts, WR2, WR2.Fpts, WR3, WR3.Fpts, TE, TE.Fpts, FLEX, FLEX.Fpts, DST, DST.Fpts
FROM QB, RB1, RB2, WR1, WR2, WR3, TE, FLEX, DST
WHERE
(QB.Salary + RB1.Salary + RB2.Salary + WR1.Salary + WR2.Salary + WR3.Salary + TE.Salary + FLEX.Salary + + DST.Salary <= 50000)
AND
(QB.Fpts + RB1.Fpts + RB2.Fpts + WR1.Fpts + WR2.Fpts + WR3.Fpts + TE.Fpts + FLEX.Fpts + DST.Fpts >= 200)
LIMIT 1000;
如何使它能够从该查询返回值,以及是否有方法将结果保存到文本文件?
1条答案
按热度按时间mu0hgdu01#
您需要附加条件,要求参与者不平等: