Inoltre, per “DateTime2” (rispetto a “DateTime”):
1. L’utilizzo della funzione “DateAdd” non è una soluzione banale per non avere una conversione implicita / facile in un numero in virgola mobile (# di giorni.frazione di un giorno) dal min data-ora, esp. stai cercando di prendere in considerazione più parti (se non tutte) della data (cioè aggiungendo / sottraendo 2 date-time complete insieme / l’una dall’altra).
2. Non è possibile calcolare facilmente ” età “(ad esempio sottraendo semplicemente un” DateTime ” da un altro vs. utilizzando la funzione “DateDiff”che non restituisce” age ” quando le due date-time si trovano sui lati opposti di un limite di calendario / orologio dell’unità specificata).
3. Non è possibile utilizzare facilmente la funzione di aggregazione “Avg”(semplicemente “Cast” su “Float”prima e di nuovo su “DateTime”). A proposito, se stai chiedendo quale sia lo scopo di ottenere un ” Avg ” di date-time: oltre all’uso per ottenere la durata media quando vengono utilizzati date-time (poiché una data-ora di base comune) per rappresentare la durata (una pratica comune), è anche utile ottenere statistiche di tipo dashboard su quale sia la data-ora media in un intervallo / gruppo di date-time. Una query ad hoc standard per ricercare / risolvere i valori in una colonna che potrebbe non essere valida mai / più e / o potrebbe dover essere deprecata consiste nell’elencare per ciascun valore il conteggio delle occorrenze e (se disponibile) i timbri data-ora min, avg e max associati a tale valore.
Sì, mi rendo conto che c’è un (abbastanza complesso) soluzione la formula (a “https://siderite.blogspot.com/2015/08/how-to-translate-t-sql-datetime2-to.html”), ma anche che la formula funziona solo per la data di volte più recente rispetto a un anno 1970 (il che significa perdere tutti gli extra gamma *plus* 217 anni e che extra gamma è probabilmente (presumibilmente) una delle 2 più grande pro di “DateTime2” anche se probabilmente non è necessario nella maggior parte dei casi di utilizzo), e non è necessariamente banale per rendere il supporto più gamma a causa di possibili problemi di overflow numerico.
E, sì, mi rendo conto che si potrebbe anche “Cast” a “DateTime” prima (e, se necessario, di nuovo a “DateTime2”), ma si perderebbe la precisione supplementare e, di nuovo, la maggiore autonomia (tutti prima dell’anno 1753) le prestazioni di “DateTime2” vs. “DateTime” che, di nuovo, probabilmente sono i 2 più grandi e, allo stesso tempo, probabilmente non servono, il che solleva la questione del perché la uso quando si perde l’implicita / conversioni facili a virgola mobile numerico (numero di giorni) per l’aggiunta / sottrazione / “età” (vs. DateDiff) / Avg calcs beneficio che è un grande nella mia esperienza.