Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Perché SQL Server perde un millisecondo?

SQL Server archivia solo il tempo a circa 1/300 di secondo. Questi cadono sempre su 0, 3 e 7 millisecondi. Per esempio. contando da 0 nell'incremento più piccolo:

00:00:00.000
00:00:00.003
00:00:00.007
00:00:00.010
00:00:00.013
...

Se hai bisogno della precisione di un millisecondo, non c'è un modo piacevole per aggirarlo. Le migliori opzioni che ho visto sono memorizzare il valore nei campi numerici personalizzati e ricostruirlo ogni volta che si recupera il valore, oppure memorizzarlo come stringa di un formato noto. Puoi quindi (facoltativamente) memorizzare una data "approssimativa" nel tipo di data nativo per motivi di velocità, ma introduce una complessità concettuale che spesso non è desiderata.