Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 19 su 19

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    258
    Quote Originariamente inviata da clasku Visualizza il messaggio
    mysql
    codice:
    SELECT tuoCampo, 
        SUM(campoMinuti) as sommaMinuti, 
        (SUM(campoMinuti) DIV 60) as oreConvertite, 
        (SUM(campoMinuti) MOD 60) as minutiConvertiti,
    concat((SUM(campoMinuti) DIV 60), ":" , (SUM(campoMinuti) MOD 60)) as stringaOreMinuti
    FROM tuaTabella 
    Group by tuoCampo;
    sommaMinuti è la somma pura del campo (ipotizziamo 210)
    oreConvertite sono le ore (3 ore)
    minutiConvertiti sono i minuti (30 minuti)
    stringaOreMinuti è una rappresentazione in formato orologio (ad esempio, "3:30")

    te le ho messe tutte in modo che tu possa scegliere (e avere più esempi di come fare una certa cosa)
    Non mi sono chiari alcuni punti:

    sommaMinuti a cosa si riferisce? devo utilizzare due campi separati?

  2. #2
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    sommaMinuti è la somma del campo in cui segni i minuti
    A te esattamente cosa serve fare? Cosa vuoi ottenere?

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    258
    Allora io al momento ho fatto in questo modo

    1 Campo di tipo decimal 8,2 , dove salvo dei valori preimpostati scelti tramite una select e sono : 0.30, 1.00, 1.30 etc... Di questi dati poi mi serve la somma, perchè devo mostrare al utente quante ore (comprese di minuti quindi 1:30, 7:30)ha salvato, con il metodo da me usato mi fa la somma algebrica e non va bene perché su un utente salva:
    1.00 + 2.30 + 0.30 = 3.60 mentre invece dovrebbe dare 4 con il tuo primo consiglio quello di salvare direttamente i minuti va bene in parte, mi calcola solo le ore intere mentre a me servono anche le mezzore (l'utente puo salvare intervalli di ogni 30 min).
    Invece con il tuo ultimo esempio non ho capito bene, dovrei salvare ore e minuti i diversi campi e poi unire il tutto con una query?

  4. #4
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Siccome c'è una select puoi mettere il "value" che vuoi. Cioè convertire sin dall'inizio le ore in base 60 in ore base 100. Cosi hai solo da fare la somma per ottenere il valore giusto.

    codice HTML:
    <select name="pippo">
            <option value="0.5">0.30</option>
            <option value="1.0">1.00</option>
            <option value="1.5">1.30</option>
            <option value="2.0">2.0</option>
            etc....
    </select>
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    258
    Quote Originariamente inviata da badaze Visualizza il messaggio
    Siccome c'è una select puoi mettere il "value" che vuoi. Cioè convertire sin dall'inizio le ore in base 60 in ore base 100. Cosi hai solo da fare la somma per ottenere il valore giusto.

    codice HTML:
    <select name="pippo">
            <option value="0.5">0.30</option>
            <option value="1.0">1.00</option>
            <option value="1.5">1.30</option>
            <option value="2.0">2.0</option>
            etc....
    </select>
    Ciao, ma in questo modo ritorno al problema di prima, quello di non aver le la somma dei 30 min. Tipo con il tuo esempio faccio 0.5 + 1.0 + 2.0 = 3.5 come faccio a visualizzare 3:30 ?

  6. #6
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Quote Originariamente inviata da sixdas Visualizza il messaggio
    ciao, ma in questo modo ritorno al problema di prima, quello di non aver le la somma dei 30 min. Tipo con il tuo esempio faccio 0.5 + 1.0 + 2.0 = 3.5 come faccio a visualizzare 3:30 ?
    floor(x) + (x - floor(x)) * 60
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    258
    Quote Originariamente inviata da badaze Visualizza il messaggio
    floor(x) + (x - floor(x)) * 60
    Ciao, ho fatto qualche prova, ma non sono riuscito, potresti farmi un esempio più pratico? tipo dove hai messo le x devo mettere le somme delle ore che ottengo dalla query? Non immaginavo che trattare le date/ore fosse cosi complicato

  8. #8
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Quote Originariamente inviata da sixdas Visualizza il messaggio
    Ciao, ho fatto qualche prova, ma non sono riuscito, potresti farmi un esempio più pratico? tipo dove hai messo le x devo mettere le somme delle ore che ottengo dalla query? Non immaginavo che trattare le date/ore fosse cosi complicato
    Codice PHP:
    <?php    
    $a 
    3.5;    
    $b = (int) $a;    
    $c $b + (($a $b) * 0.6);    
    print 
    $c;
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

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 © 2026 vBulletin Solutions, Inc. All rights reserved.