Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [mysql4] progettazione tabella giornate campionato

    so facendo uno scriptino per la gestione di una lega di fantacalcio.. una cosa semplice per amici.. ma ho un problema:

    ho messo le squadre in una loro tabella con id, nome, partite vinte pareggiate e perse (su questi dati calcolo la classifica)

    e le partite in una tabella chiamata calendario e fatta così:

    giornata | sq1 (squadra in casa) | sq2 (squadra fuori casa) | rf1 (reti fatte dalla squadra in casa) | rf2 (reti fatte dalla squadra fuori casa

    chiaramente per ogni giornata ho n/2 record per n squadre.. e come chiave uso la coppi giornata/squadra in casa

    il punto è:

    la classifica la calcolo così:
    SELECT * FROM squadre
    ORDER BY pv*3 + pn DESC, rf-rs DESC, rf DESC
    (ovvero calcoo al volo i punti in base a partite vinte e nulle, e ordino in base ai punti)....

    ma dovrei metterci anche reti fatte e subite nell'intero campionato. Potrei benissimo mettere i valori come attributo di squadre (ogni squadra ha un suo totale di reti fatte e di reti subite) e aggiornarlo ad ogni giornata... ma visto che ho le reti fatte e subite per ogni partita.... stavo cercando di capire come fare a ottenere il valore..ho l'impressione che no si possa fare... forse neanche con subquery... giusto?

    secondo voi non c'è altra soluzione che aggiungere i cmapi di cui sopra?

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    591
    prova con:

    SELECT Tabella1.id, Tabella1.nome, Sum(pv*3+pn) AS punti, Sum(X.rf1+Y.rf2) AS retifatte, Sum(Y.rf1+X.rf2) AS subite
    FROM (Tabella1 LEFT JOIN calendario AS X ON Tabella1.id = X.sq1) LEFT JOIN calendario AS Y ON Tabella1.id = Y.sq2
    GROUP BY Tabella1.id, Tabella1.nome;

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.