Pagina 2 di 4 primaprima 1 2 3 4 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 31
  1. #11
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    35
    Quote Originariamente inviata da optime Visualizza il messaggio
    cosa non hai capito? non vorrei scriverti io tutta la query se vuoi, qui https://lnx.dicesare.com/sql/sql-com...-di-risultati/ un po' di "teoria"
    Il link che mi hai passato lo leggerò con attenzione grazie! La cosa che non ho capito è se devo fare due nuove SELECT con i CASE ecc... oppure è una modifica alle SELECT che già ci sono...

  2. #12
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    35
    Quote Originariamente inviata da optime Visualizza il messaggio
    cosa non hai capito? non vorrei scriverti io tutta la query se vuoi, qui https://lnx.dicesare.com/sql/sql-com...-di-risultati/ un po' di "teoria"
    Il link che mi hai passato lo leggerò con attenzione grazie! La cosa che non ho capito è se devo fare due nuove SELECT con i CASE ecc... oppure è una modifica alle SELECT che già ci sono...

  3. #13
    una modifica inserendo le select "placeholder" alternate

  4. #14
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    35
    Dunque, da quello che mi hai suggerito e il link che mi ha passato, credo di aver capito la logica, ti faccio vedere:

    Prima SELECT diventa:
    codice:
    SELECT sq_casa AS squadra, gol_sq_casa_and AS fatti, gol_sq_osp_and AS subiti,
                    CASE
                    WHEN gol_sq_casa_and > gol_sq_osp_and THEN 2
                    WHEN gol_sq_casa_and = gol_sq_osp_and AND gol_sq_casa_and <> '' THEN 1
                    ELSE 0
                    END AS punteggiopre63, 0 AS punteggiopost63
                    FROM partite_SerieA WHERE id_stagione < '63'
                    UNION ALL
                    SELECT sq_osp AS squadra, gol_sq_osp_and AS fatti, gol_sq_casa_and AS subiti,
                    CASE
                    WHEN gol_sq_osp_and > gol_sq_casa_and THEN 2
                    WHEN gol_sq_osp_and = gol_sq_casa_and AND gol_sq_osp_and <> '' THEN 1
                    ELSE 0
                    END AS punteggiopre63, 0 AS punteggiopost63
                    FROM partite_SerieA WHERE id_stagione < '63'
                    UNION ALL
                    SELECT sq_casa AS squadra, gol_sq_casa_rit AS fatti, gol_sq_osp_rit AS subiti,
                    CASE
                    WHEN gol_sq_casa_rit > gol_sq_osp_rit THEN 2
                    WHEN gol_sq_casa_rit = gol_sq_osp_rit AND gol_sq_casa_rit <> '' THEN 1
                    ELSE 0
                    END AS punteggiopre63, 0 AS punteggiopost63
                    FROM partite_SerieA WHERE id_stagione < '63'
                    UNION ALL
                    SELECT sq_osp AS squadra, gol_sq_osp_rit AS fatti, gol_sq_casa_rit AS subiti,
                    CASE
                    WHEN gol_sq_osp_rit > gol_sq_casa_rit THEN 2
                    WHEN gol_sq_osp_rit = gol_sq_casa_rit AND gol_sq_osp_rit <> '' THEN 1
                    ELSE 0
                    END AS punteggiopre63, 0 AS punteggiopost63
                    FROM partite_SerieA WHERE id_stagione < '63'

    e la seconda SELECT diventa:
    codice:
    SELECT sq_casa AS squadra, gol_sq_casa_and AS fatti, gol_sq_osp_and AS subiti, 0 AS punteggiopre63, 
                    CASE
                    WHEN gol_sq_casa_and > gol_sq_osp_and THEN 3
                    WHEN gol_sq_casa_and = gol_sq_osp_and AND gol_sq_casa_and <> '' THEN 1
                    ELSE 0
                    END AS punteggiopost63
                    FROM partite_SerieA WHERE id_stagione >= '63'
                    UNION ALL
                    SELECT sq_osp AS squadra, gol_sq_osp_and AS fatti, gol_sq_casa_and AS subiti, 0 AS punteggiopre63,
                    CASE
                    WHEN gol_sq_osp_and > gol_sq_casa_and THEN 3
                    WHEN gol_sq_osp_and = gol_sq_casa_and AND gol_sq_osp_and <> '' THEN 1
                    ELSE 0
                    END AS punteggiopost63
                    FROM partite_SerieA WHERE id_stagione >= '63'
                    UNION ALL
                    SELECT sq_casa AS squadra, gol_sq_casa_rit AS fatti, gol_sq_osp_rit AS subiti, 0 AS punteggiopre63,
                    CASE
                    WHEN gol_sq_casa_rit > gol_sq_osp_rit THEN 3
                    WHEN gol_sq_casa_rit = gol_sq_osp_rit AND gol_sq_casa_rit <> '' THEN 1
                    ELSE 0
                    END AS punteggiopost63
                    FROM partite_SerieA WHERE id_stagione >= '63'
                    UNION ALL
                    SELECT sq_osp AS squadra, gol_sq_osp_rit AS fatti, gol_sq_casa_rit AS subiti, 0 AS punteggiopre63,
                    CASE
                    WHEN gol_sq_osp_rit > gol_sq_casa_rit THEN 3
                    WHEN gol_sq_osp_rit = gol_sq_casa_rit AND gol_sq_osp_rit <> '' THEN 1
                    ELSE 0
                    END AS punteggiopost63
                    FROM partite_SerieA WHERE id_stagione >= '63'
    Dimmi se è corretto, perchè l'alias che c'era, cioè "punteggio" che serviva per le SUM(), dovrei comunque lasciarlo o no? Ora eseguendo la query giustamente mi da questo errore:

    codice:
    Unknown column 'punteggio' in 'field list'

  5. #15
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    35
    Up non mi preso la risp..

  6. #16
    ovviamente non hai più punteggio, ma punteggiopre63 e punteggiopost63 -- era questo che volevi, no?

  7. #17
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    35
    Si anche, ma mi serve che la query mi faccia il punteggio totale e mi ordini la classifica per DESC. il punteggiopre63 e punteggiopost63 dovrebbero essere solamente delle colonne in più. Anche perchè qui:

    codice:
    SUM(if(punteggio=2,1,0)) AS vit_2p,
    SUM(if(punteggio=3,1,0)) AS vit_3p,
    SUM(if(punteggio=1,1,0)) AS pareggi,
    SUM(if(punteggio=0 AND fatti!= '',1,0)) AS sconfitte,
    SUM(punteggio) AS punteggio,
    userebbe l'alias punteggio per calcolare anche i pareggi e sconfitte.

  8. #18
    ma allora a cosa ti servono separati?

  9. #19
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    35
    statisticamente mi interessa avere una colonna con i punti totali di tutti i campionati e le due colonne differenziate per quelli con 3 e 2 punti... loooo so ma è una mia curiosità puramente statistica

    Pensa che a questa query ci sto dietro da mesi! Prima a capire bene come funziona e ora a cercare di modificarla... ad una certa ho deciso di cercare aiuto perchè da solo la mia conoscenza non bastava

  10. #20
    puoi sempre sommare i due campi con un ulteriore incapsulamento

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