Post by Emanuelvolevo chiedere se e come fosse possibile gestire in un campo di tipo
DateTime anche i centesimi di secondo di un certo istante.
Fino ad ora, non li ho visti e venendo da un altro DBMS ho gestito i
centesimi in un loro campo apposito con aggravio nel codice del programma.
Ciao Emanuel,
prima di tutto leggi il seguente tip e gli articoli segnalati:
http://italy.mvps.org/MVPs/lbenaglia/LorenzoBenaglia-Tip-FormatoDate.htm
I Books Online riportano:
"datetime
Date and time data from January 1, 1753 through December 31, 9999, to an
accuracy of one three-hundredth of a second (equivalent to 3.33 milliseconds
or 0.00333 seconds). Values are rounded to increments of .000, .003, or .007
seconds, as shown in the table."
Quindi per visualizzare i millisecondi della parte oraria di una data è
sufficiente scegliere una formattazione che permetta di visualizzarli
tramite la funzione CONVERT:
SELECT CONVERT(varchar(23), GETDATE(), 121) DataOraConMillisecondi
GO
/* Output:
DataOraConMillisecondi
-----------------------
2004-08-27 15:08:26.793
(1 row(s) affected)
*/
Se ti interessa recuperare solo i millisecondi puoi ricorrere alla funzione
DATEPART:
SELECT DATEPART(millisecond, GETDATE()) Millisecondi
GO
/* Output:
Millisecondi
------------
503
(1 row(s) affected)
*/
Trovi tutti i dettagli sui Books Online.
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://mvp.support.microsoft.com
http://italy.mvps.org