Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    42

    [access] Raggruppare per ora

    Ciao Ragazzi,

    Premetto che ho utilizzato molto poco access e quindi vi prego di non insultarmi per le mie richieste

    Sto realizzando un database contenente questi dati:

    DATA ORA VALORE
    01/01/2012 01:00 53
    01/01/2012 01:15 98
    01/01/2012 01:30 85

    etc

    Vorrei raggruppare i dati per ora ed avere la somma dei valori. nel seguente modo:

    01/01/2012 01:00 236

    Come si fa?

    Grazie mille

  2. #2
    Utente di HTML.it L'avatar di nman
    Registrato dal
    Jan 2011
    residenza
    Milano
    Messaggi
    1,333
    Formatti DATA ORA escludendo i minuti e secondi
    Raggruppi x DataOra Formattato
    Sommi i VALORI

    codice:
    SELECT 
    Format([DATA ORA],"yyyy-mm-dd hh") AS DaOrGru, 
    Sum(Tabe.VALORE) AS Somma
    FROM 
    Tabe
    GROUP BY 
    Format([DATA ORA],"yyyy-mm-dd hh")
    .

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    42
    Originariamente inviato da nman
    Formatti DATA ORA escludendo i minuti e secondi
    Raggruppi x DataOra Formattato
    Sommi i VALORI

    codice:
    SELECT 
    Format([DATA ORA],"yyyy-mm-dd hh") AS DaOrGru, 
    Sum(Tabe.VALORE) AS Somma
    FROM 
    Tabe
    GROUP BY 
    Format([DATA ORA],"yyyy-mm-dd hh")
    .
    Grazie mille funziona!!!!

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    42
    Un ultimo dubbio... Mi sono accorto che il campo data ora, prima del raggruppamento, va sottratto di 15 minuti. Come posso fare?

    Grazie ancora!!

  5. #5
    Utente di HTML.it L'avatar di nman
    Registrato dal
    Jan 2011
    residenza
    Milano
    Messaggi
    1,333
    Io questo lo risolverei cosi:

    Se tu fai la data odierna in formato numerico ti viene 41.191
    Se fai la data di ieri in formato numerico ti viene 41.190


    ne consegue che
    1 gg = 1
    24 h = 1
    1440 min = 1

    1 min = 1/1440
    15 min = ((1/1440)*15)

    pertanto il tutto diventa:
    codice:
    SELECT 
    Format(([DATA ORA]-((1/1440)*15)),"yyyy-mm-dd hh") AS DaOrGru, 
    Sum(Tabe.VALORE) AS Somma
    FROM 
    Tabe
    GROUP BY 
    Format(([DATA ORA]-((1/1440)*15)),"yyyy-mm-dd hh")
    ;




    .

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    42
    Originariamente inviato da nman
    Io questo lo risolverei cosi:

    Se tu fai la data odierna in formato numerico ti viene 41.191
    Se fai la data di ieri in formato numerico ti viene 41.190


    ne consegue che
    1 gg = 1
    24 h = 1
    1440 min = 1

    1 min = 1/1440
    15 min = ((1/1440)*15)

    pertanto il tutto diventa:
    codice:
    SELECT 
    Format(([DATA ORA]-((1/1440)*15)),"yyyy-mm-dd hh") AS DaOrGru, 
    Sum(Tabe.VALORE) AS Somma
    FROM 
    Tabe
    GROUP BY 
    Format(([DATA ORA]-((1/1440)*15)),"yyyy-mm-dd hh")
    ;

    Grande!! sicuramente questo trucchetto mi sarà utile in futuro.

    Grazie mille!

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.