Pagina 3 di 3 primaprima 1 2 3
Visualizzazione dei risultati da 21 a 22 su 22

Discussione: Somme in access

  1. #21
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    395
    Salve ho eseguito questa query ma devo incrementarla

    codice:
    SELECT Giocatori.codicegiocatore, Sum(tab.punteggio) AS somma
    FROM (SELECT Giocatori.codicegiocatore,punteggi.punteggio
    FROM Giocatori INNER JOIN punteggi ON Giocatori.codicegiocatore = punteggi.codicegiocatore
    WHERE (((punteggi.id) In (Select Top 7 [id] From punteggi Where [codicegiocatore]=[Giocatori].[codicegiocatore] Order By [punteggio] Desc,punteggi.id)))
    ORDER BY Giocatori.codicegiocatore, punteggi.punteggio DESC , punteggi.id)  AS tab INNER JOIN Giocatori ON tab.codicegiocatore = Giocatori.codicegiocatore
    GROUP BY Giocatori.codicegiocatore
    ORDER BY Sum(tab.punteggio) DESC;
    devo incrementarla con un'altra tabella dal nome "gare"
    con i seguenti campi: codicegara (che è presente anche nella tabella punteggi) e tipogara.

    ora dovrei estrarre le "select top 7" SOLO dove nel campo codicegara c'è "C".

    ci ho provato ma non riesco a capire dove devo mettere l'INNER JOIN

    confido in una risposta.

    Grazie mille

  2. #22
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    395
    dove sbaglio?
    Ho fatto questo:
    codice:
    SELECT Giocatori.codicegiocatore, Sum(tab.punteggio) AS somma
    FROM (SELECT Giocatori.codicegiocatore,punteggi.punteggio,gare.tipogara
    FROM Giocatori INNER JOIN (gare INNER JOIN punteggi ON gare.codicegara = punteggi.codicegara) ON Giocatori.codicegiocatore = punteggi.codicegiocatore
    WHERE (((gare.tipogara)="C")) And (((punteggi.id) In (Select Top 2 [id] From punteggi Where [codicegiocatore]=[Giocatori].[codicegiocatore] Order By [punteggio] Desc,punteggi.id)))
    ORDER BY Giocatori.codicegiocatore, punteggi.punteggio desc, gare.tipogara, punteggi.id)  AS tab INNER JOIN Giocatori ON tab.codicegiocatore = Giocatori.codicegiocatore
    GROUP BY Giocatori.codicegiocatore
    ORDER BY Sum(tab.punteggio) DESC;
    in sostanza funziona ma non estrae i 2 record.
    mi spiego meglio: estrae i primi 2 record (anche in caso di punteggio uguale ne estrae solamente 2) se i due o più record sono di tipogara = C.
    nella prova che sto facendo mi estrae per esempio di un codicegiocatore un solo record ma in sostanza ce ne sono 3 e il primo è tipogara = IT.
    come risolvo questo inghippo?

    grazie

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.