Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    714

    Query su access ... intervallo di tempo non accettato.

    Uso questo codice per generare la classifica di calcio:

    codice:
    SELECT PunteggiSquadre.Squadra, Sum(PunteggiSquadre.Punti) AS P, 
    Sum(PunteggiSquadre.GoalFatti) AS GF, Sum(PunteggiSquadre.GoalSubiti) AS GS 
    FROM (SELECT casa AS Squadra, 
    Iif(ris_casa=ris_fuori,1,Iif(ris_casa>ris_fuori,3,0)) as 
    Punti,ris_casa AS GoalFatti,ris_fuori AS GoalSubiti 
    FROM campionato_calendario 
    WHERE ris_casa IS NOT NULL 
    UNION ALL 
    SELECT fuori AS Squadra, 
    Iif(ris_casa=ris_fuori,1,Iif(ris_casa>ris_fuori,0,3)) as Punti, 
    ris_fuori AS GoalFatti,ris_casa AS GoalSubiti 
    FROM campionato_calendario 
    WHERE ris_fuori IS NOT NULL 
    ) AS PunteggiSquadre 
    GROUP BY PunteggiSquadre.Squadra 
    ORDER BY Sum(PunteggiSquadre.Punti) DESC , 
    Sum(PunteggiSquadre.GoalFatti)-Sum(PunteggiSquadre.GoalSubiti) DESC;ù
    in una tabella del tipo (3 giornate):

    CASA - FUORI - GOAL FATTI - GOAL SUBITI - GIORNATA - DATA
    squadra1 squadra2 0 0 1 07/07/2008
    squadra3 squadra4 1 2 1 07/09/2008
    squadra5 squadra6 0 1 1 07/09/2008
    squadra7 squadra8 0 0 1 07/09/2008
    squadra9 squadra10 2 1 1 07/09/2008
    squadra11 squadra12 1 1 1 07/09/2008
    squadra13 squadra14 2 1 1 07/09/2008
    squadra15 squadra16 1 1 1 07/09/2008
    squadra16 squadra13 1 1 2 14/09/2008
    squadra6 squadra9 0 1 2 14/09/2008
    squadra10 squadra15 0 1 2 14/09/2008
    squadra2 squadra3 4 2 2 14/09/2008
    squadra4 squadra7 2 0 2 14/09/2008
    squadra12 squadra5 3 0 2 14/09/2008
    squadra8 squadra11 1 2 2 14/09/2008
    squadra14 squadra1 1 3 2 14/09/2008
    squadra1 squadra16 2 2 3 21/09/2008
    squadra3 squadra14 0 1 3 21/09/2008
    squadra5 squadra8 0 2 3 21/09/2008
    squadra2 squadra4 2 1 3 21/09/2008
    squadra9 squadra12 2 1 3 21/09/2008
    squadra11 squadra7 0 2 3 21/09/2008
    squadra13 squadra10 1 0 3 21/09/2008
    squadra15 squadra6 0 0 3 21/09/2008


    Il codice sopra funziona benissimo ma poi voglio fare delle query, su dei
    particolari intervalli di tempo ,con un codice sotto dove non faccio altro
    che aggiungere un where sulla data:

    codice:
    SELECT PunteggiSquadre.Squadra, Sum(PunteggiSquadre.Punti) AS P, 
    Sum(PunteggiSquadre.GoalFatti) AS GF, Sum(PunteggiSquadre.GoalSubiti) AS GS 
    FROM (SELECT casa AS Squadra, 
    Iif(ris_casa=ris_fuori,1,Iif(ris_casa>ris_fuori,3,0)) as 
    Punti,ris_casa AS GoalFatti,ris_fuori AS GoalSubiti 
    FROM campionato_calendario 
    WHERE ris_casa IS NOT NULL and (((campionato_calendario.data) Between 
    [@data_inizio_cale] And [@data_fine_cale])) 
    UNION ALL 
    SELECT fuori AS Squadra, 
    Iif(ris_casa=ris_fuori,1,Iif(ris_casa>ris_fuori,0,3)) as Punti, 
    ris_fuori AS GoalFatti,ris_casa AS GoalSubiti 
    FROM campionato_calendario 
    WHERE ris_fuori IS NOT NULL and (((campionato_calendario.data) 
    Between [@data_inizio_cale] And [@data_fine_cale])) 
    ) AS PunteggiSquadre 
    GROUP BY PunteggiSquadre.Squadra 
    ORDER BY Sum(PunteggiSquadre.Punti) DESC , 
    Sum(PunteggiSquadre.GoalFatti)-Sum(PunteggiSquadre.GoalSubiti) DESC;
    MI SEMBRAVA funzionasse tutto ... invece ho scoperto che si crea una
    classifica completamente sballata (mentre risultato corretti i goal fatti e
    subiti)! riuscite a capire dove potrebbe inserirsi l'errore?

    NB: la query se interroga solo una giornata da un risultato corretto ma se
    già interroga due giornate è sbagliatissima

    GRAZIE di qualsiasi aiuto
    Fotografario MultiUtente Interamente in Flash: QUI

  2. #2
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Sposto in programmazione perchè non riguarda asp.net

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    714
    ok ... grazie
    Fotografario MultiUtente Interamente in Flash: QUI

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    714
    nessuno può aiutarmi?
    Fotografario MultiUtente Interamente in Flash: QUI

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.