purtroppo questo modo di progettare il db come fosse un foglio excel non aiuta. comunque, vediamo:

per capire se 1 giocatore (es, il 34) ha giocato in una partita dovrai fare

codice:
WHERE (pl1=34 OR pl2=34 OR .... fino a pl10)
per vedere se 2 giocatori (es, il 34 e il 18) hanno giocato nella stessa partita dovrai fare

codice:
WHERE (pl1=34 OR pl2=34 OR .... fino a pl10) AND (pl1=18 OR pl2=18 OR .... fino a pl10)
e così via. Tutto questo per vedere SE e QUANDO hanno giocato. Per capire con/contro quale/quali giocatori un certo giocatore ha giocato più spesso, con questa rappresentazione secondo me non te la cavi. Una rappresentazione efficace sarebbe stata

tabGiocatori
---------------
idGiocatore
nome

tabPartite
--------------
idPartita
data
risultato

tabRuoli
----------
idRuolo
descrizione

tabPresenze
----------------
idPartita
idGiocatore
idRuolo


non capisco poi perché fai una tabella per settimana, visto che hai il campo data (mettilo in formato YYYY-MM-AA, così puoi fare riordinamenti, confronti etc)