Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [MySql] Calcolare differnza ora

    Ciao, ho due campi in una tabella con formato time, in cui memorizzo due orari di inizio e di fine, devo calcolare il tempo passato tra il primo e il secondo, fin qui nessun problema, utilizzo la funzione timediff e mi restiuisce correttamente i valori, ma il problema si verifica quando la fine è dopo la mezzanotte, orari del genere non crea problemi
    Inizio: 11:00 e fine 17:00
    Inizio: 06:00 e fine 22:00

    Invece orari come questi restituisce valori sbagliati
    Inizio: 09:00 fine 01:00
    Inizio 11:00 fine 02:00

    come posso risolvere?

    grazie.

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    La butto cosi. scrivo in pseudo codice. Da adattare

    CASE WHEN inizio > fine THEN TIMEDIFF(24,inizio) + TIMEDIFF(fine,0) ELSE TIMEDIFF(fine,inizio) END

    Hai capito il concetto ?

    Comunque se l'inizio è di lunedi e la fine di venerdi il risultato sarà errato.
    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

  3. #3
    Quote Originariamente inviata da badaze Visualizza il messaggio
    La butto cosi. scrivo in pseudo codice. Da adattare

    CASE WHEN inizio > fine THEN TIMEDIFF(24,inizio) + TIMEDIFF(fine,0) ELSE TIMEDIFF(fine,inizio) END

    Hai capito il concetto ?

    Comunque se l'inizio è di lunedi e la fine di venerdi il risultato sarà errato.
    Il concetto l'ho capito, adesso faccio alcune prove. L'orario è sempre nello stesso giorno, o al massimo poco dopo la mezzanotte

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.