Approssimare i minuti a step di 5

giovedì 05 novembre 2015 - 11.29

lalloburo Profilo | Newbie

Ciao a tutti,
ho un campo in datetime in cui vengono regstrate delle ore da un interfaccia web che non mi consente di settare gli step a intervalli di 5 minuti.
Come posso approssimare le ore registrate se condo tali intervalli?
es:
dato originale 12/12/2015 12:31:00
dato modificato 12/12/2015 12:30:00

spero di essermi spiegato, chedo scusa forse è banale per voi ma io ci sto impazzendo.
Grazie a tutti, buona giornata.

renarig Profilo | Expert

converti la data in numero decimale
moltiplichi il numero per 288 ( in 1 gg ci sono 288 volte 5 minuti )
arrotondi
dividi per 288
converti il numero risultante in data

se fosse una vista di Access allora:
CDate((Round((CDbl([TuoCampoData]))*288))/288)

Facci sapere

lalloburo Profilo | Newbie

semplicemente GRANDI.
grazie davvero della competenze e della velocità... non ho parole.

Una curiosità: il numero che ottengo convertendo la data in decimale come viene calcolato? cioè che significato ha? Scusate la pedaneria, ma mi affascina...
Grazie ancora

renarig Profilo | Expert

>........ il numero che ottengo convertendo la data in decimale
>come viene calcolato? ........

Le date possono essere trattate anche come dei numeri
( pero riscontri delle imprecisioni millesimali se ci fai molti calcoli
quindi lo sconsiglio se non in casi semplici )

Access comincia a contare le date dal 30/12/1899 alle ore 00:00:00
( la notte fra il 29/12/1899 e il 30/12/1899 )

quindi oggi 06/11/2015 alle ore 18:00:00 siamo al numero 42314,75

infatti se fai 125 anni per 365 ti viene circa 42000
il 0.75 sono i tre quarti di giornata delle 18 ore

Tieni presente che ogni DB ha il suo particolare giorno zero delle date,

Pero tutti i DB che ho "incontrato" ad oggi hanno tutti l'incremento
di una unita per ogni giornata

.




Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5