none
PLEASE AIUTO QUERY RRS feed

  • Domanda

  • Ciao, sarà una stupidata ma è un po' che cerco una soluzione e allora ho pensato di chiedere aiuto.

    Io ho un db che registra delle partite di campionato con, tra le altre, una tabella X. Questa tabella X contiene:

    NomeSquadraCasa, NomeSquadraTrasferta, PuntiSquadraCasa, PuntiSquadraTrasferta

    Adesso avrei la necessità di mostrare il risultato di una query; una lista di squadre con relativo punteggio (classifica).

    Es.: Record: SquadraX,SquadraY,2,1  -    SquadraY, SquadraZ,3,0

    Risultato: SquadraY 4

                    SquadraX 2

                    SquadraZ 0

    Grazie per l'aiuto

    lunedì 5 maggio 2014 15:47

Risposte

  • Ciao, prova in questo modo

    CREATE TABLE dbo.Test (
    	sc VARCHAR(10)
    	,st VARCHAR(10)
    	,psc INT
    	,pst INT
    	)
    
    INSERT INTO dbo.Test
    VALUES ('x','y',0,1)
    	,('x','z',2,1)
    	,('z','w',0,0)
    	,('w','x',2,3)
    	,('k','z',3,1)
    
    SELECT s
    	,sum(pt) AS totpt
    FROM (
    	SELECT sc AS s
    		,CASE 
    			WHEN psc > pst
    				THEN 2
    			WHEN psc = pst
    				THEN 1
    			ELSE 0
    			END AS pt
    	FROM dbo.test
    	
    	UNION ALL
    	
    	SELECT st AS s
    		,CASE 
    			WHEN psc < pst
    				THEN 2
    			WHEN psc = pst
    				THEN 1
    			ELSE 0
    			END AS pt
    	FROM dbo.test
    	) AS temptbl
    GROUP BY s
    ORDER BY totpt DESC
    	,s
    

    L'ho buttata giù di getto, forse si può fare anche di meglio, ma dovrebbe comunque funzionare.

    • Contrassegnato come risposta Gianni Costello martedì 6 maggio 2014 14:32
    martedì 6 maggio 2014 08:13