Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di tony83
    Registrato dal
    Feb 2005
    Messaggi
    3,179

    <SQL> GROUP BY (Access)

    Scusate non riesco a capire..

    Ho bisogno di fare un group by sul campo nomegruppo e il nomegruppo ragrupparli per il numero del mese del campo data, e infine anche recuperare semplicemente il campo data..

    Ho fatto numerevoli tentavivi.. ma non riesco..

    Ho visto anche sui manuali ma niente!!

    Esempio:

    nomegruppo - data
    PAOLO - 01 (che sarebbe il mese) - 01/01/2007
    PAOLO - 02 - 01/02/2007
    FRANCO - 12 - 01/12/2007
    MARIO - 02 - 01/02/2007

    etc..

    quindi scarterebbe per esempio:
    PAOLO - 02 - 15/02/2007

    Come si fa??

    GRazie anticipatamente!!
    Tony

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Io non ho mica capito cosa intendi fare.
    La clausola GROUP BY si usa con le funzioni di aggregazione (somme, conteggi, medie...)
    Ad esempio, se voglio sapere quanti sono i membri di ciascun gruppo:
    codice:
    SELECT nomegruppo, count(*)
    FROM tabella
    GROUP BY nomegruppo;
    Quella in grassetto si chiama funzione di aggregazione.
    La clausola GROUP BY è obbligatoria quando si hanno funzioni di aggregazione... senza di esse non ha alcun signficato.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it L'avatar di tony83
    Registrato dal
    Feb 2005
    Messaggi
    3,179
    Originariamente inviato da LeleFT
    Io non ho mica capito cosa intendi fare.
    La clausola GROUP BY si usa con le funzioni di aggregazione (somme, conteggi, medie...)
    Ad esempio, se voglio sapere quanti sono i membri di ciascun gruppo:
    codice:
    SELECT nomegruppo, count(*)
    FROM tabella
    GROUP BY nomegruppo;
    Quella in grassetto si chiama funzione di aggregazione.
    La clausola GROUP BY è obbligatoria quando si hanno funzioni di aggregazione... senza di esse non ha alcun signficato.


    Ciao.
    OK però pensa ad avere una tabella formata cosi:

    CAMPI:

    nomegruppo - data

    E I SEGUENTI RECORD:

    PAOLO - 01/01/2007
    PAOLO - 01/02/2007
    FRANCO - 01/12/2007
    MARIO - 01/02/2007

    Io dovrei ottenere solo:

    UN GROUP BY di nomegruppo e qualora capitano nello stesso gruppo 2 date che hanno il mese diverso allora tirami furi entrambi anche se hanno lo stesso nomegruppo e poi estraggi anche la data cosi ci lavoro sopra!!

    come si fa??
    Tony

  4. #4
    Utente di HTML.it L'avatar di tony83
    Registrato dal
    Feb 2005
    Messaggi
    3,179
    Originariamente inviato da tony83
    OK però pensa ad avere una tabella formata cosi:

    CAMPI:

    nomegruppo - data

    E I SEGUENTI RECORD:

    PAOLO - 01/01/2007
    PAOLO - 01/02/2007
    FRANCO - 01/12/2007
    MARIO - 01/02/2007

    Io dovrei ottenere solo:

    UN GROUP BY di nomegruppo e qualora capitano nello stesso gruppo 2 date che hanno il mese diverso allora tirami furi entrambi anche se hanno lo stesso nomegruppo e poi estraggi anche la data cosi ci lavoro sopra!!

    come si fa??

    Ho trovato la clausola dovrebbe essere una cosa del genere:

    SELECT prova.nomegruppo, Mid(data,4,2) AS Espr1
    FROM prova
    GROUP BY prova.nomegruppo, Mid(data,4,2);

    Ora però ho bisogno di recuperare qualche informazioni in più... quindi devo avere per esempio l'id della scheda.. come faccio a recuperare anche altri campi senza che influenza sul risultato della query??? devo avere anche la visualizazzione di altri campi... In poche parole noon devono essere compresi nel group by ma solo estrarre quel dato...

    come posso fare??
    Tony

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.