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

    aiuto integrazione query per db calcistico

    Salve a tutti,
    ho un db (mysql) calcistico da cui devo ricavare una classifica (con squadre ordinate per punteggio).

    La tabella delle partite e' fatta cosi' (ho riportato solo i campi di interesse):

    campionati:
    squadra_casa
    id_squadra_casa
    gol_casa
    squadra_ospite
    id_squadra_ospite
    gol_ospite

    tutto ha funzionato bene con questa query...:

    select squadra, id_squadra,
    count(id_squadra) as giocate,
    sum(if(punteggio=3,1,0)) as vittorie,
    sum(if(punteggio=1,1,0)) as pareggi,
    sum(if(punteggio=0,1,0)) as sconfitte,
    sum(punteggio) as punti,
    sum(fatti) as gol_fatti,
    sum(subiti) as gol_subiti
    from
    (
    select squadra_casa as squadra, id_squadra_casa as id_squadra, gol_casa as fatti, gol_ospite as subiti,
    case
    when gol_casa > gol_ospite then 3
    when gol_casa = gol_ospite then 1
    else 0
    end as punteggio
    from campionati where gol_casa is not null
    union all
    select squadra_ospite as squadra, id_squadra_ospite as id_squadra, gol_ospite as fatti, gol_casa as subiti,
    case
    when gol_ospite > gol_casa then 3
    when gol_ospite = gol_casa then 1
    else 0
    end as punteggio
    from campionati where gol_casa is not null
    ) as tab
    group by id_squadra
    order by punti desc

    ...finche' non e' sorto il problema dei punti di penalizzazione
    ho creato quindi una tabella penalizzazioni fatta cosi':

    penalizzazioni:
    id_squadra
    squadra
    puntipen

    (dove puntipen e' gia' il totale dei punti di penalizzazione che ha accumulato ciascuna squadra)

    come faccio ad integrare questa informazione nella query di partenza in modo che comunque il punteggio tenga conto dei punti di penalizzazione e restituisca un ordine di classifica corretto?
    Credo sia una cosa facile facile ma mi sono infognata, ogni prova mi ha dato errore... c'e' anche da dire che l'sql non e' esattamente la mia specialita'...

    Grazie a chi vorra' aiutarmi!

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2013
    Messaggi
    287
    Quote Originariamente inviata da aleweb74 Visualizza il messaggio
    Salve a tutti,
    ho un db (mysql) calcistico da cui devo ricavare una classifica (con squadre ordinate per punteggio).
    la query che hai scritto mi sembra enormemente complicata per il semplice compito che vuoi svolgere

  3. #3
    Quote Originariamente inviata da mydb Visualizza il messaggio
    la query che hai scritto mi sembra enormemente complicata per il semplice compito che vuoi svolgere
    ovviamente la classifica non contiene solo punti ma partite giocate, vinte, pareggiate, perse, gol fatti e gol subiti...

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 © 2026 vBulletin Solutions, Inc. All rights reserved.