我有一个包含梦幻足球队的数据库。p1 = 球队中的球员 1,p2 = 球员 2,依此类推,总共 15 名球员。任何球员的名字都可以在任何 p1-p15 中,这取决于他们组建球队的方式。
我正在尝试报告谁拥有什么。Will Johnson
这是我用来查找团队中有多少人的方法。
SELECT * FROM `players`
WHERE MATCH (p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15)
AGAINST ('Will Johnson' IN BOOLEAN MODE)
AND rank <= 100
这将返回 51。
然后我执行这段代码来找出有多少人在他们的前 11 个(前 11 个变量)中有他。
SELECT * FROM `players`
WHERE MATCH (p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11)
AGAINST ('Will Johnson' IN BOOLEAN MODE)
AND rank <= 100
这将返回 47。
然后我执行此代码以找出有多少人将他放在板凳上(最后 4 个变量)
SELECT * FROM `players`
WHERE MATCH (p12, p13, p14, p15)
AGAINST ('Will Johnson' IN BOOLEAN MODE)
AND rank <= 100
这将返回 6。
所以...我的问题是 47 + 6 = 53 当它应该总计 51 时。
知道为什么或如何解决这个问题吗?