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)