SqlHints.com

også For «DateTime2» (vs. «DateTime»):

1. Bruk Av» DateAdd » – Funksjonen er ikke en triviell løsning for ikke å ha implisitt / enkel konvertering til et flyttall numerisk (#dager.brøkdel av en dag) siden min dato-tid, esp. du prøver å ta hensyn til flere (om ikke alle) deler av datoen (dvs.legge til / trekke fra 2 fulle datoperioder sammen / fra hverandre).

2. Kan ikke lett beregne «alder» (f. eks. ved å bare trekke en «DateTime» fra en annen vs. bruk Av» DateDiff «- Funksjonen som ikke returnerer «alder» når de to dato-tider er på motsatte sider av en kalender / klokkegrense for den angitte enheten).

3. Kan ikke lett bruke I «Avg» Samlet Funksjon (ved bare «Cast «‘ing å» Flyte «først og tilbake igjen til «DateTime»). Btw, hvis du spør hva hensikten er å få en » Avg » av dato-tider: foruten bruk i å få gjennomsnittlig varighet når dato-tider (siden en felles base dato-tid) brukes til å representere varighet (en vanlig praksis), er det også nyttig å få for dashboard-type statistikk på hva gjennomsnittlig dato-tid er i et område / gruppe av dato-tider. En standard ad hoc-spørring for å undersøke / feilsøke verdier i En Kolonne som kanskje ikke er gyldig noensinne / lenger og / eller kanskje må avvikles, er å liste for hver verdi forekomstantallet og (hvis tilgjengelig) min, gj.sn og maks dato-tidsstempler knyttet til denne verdien.

Ja, jeg skjønner at det er en (ganske kompleks) løsning formel (på » https://siderite.blogspot.com/2015/08/how-to-translate-t-sql-datetime2-to.html»), men selv den formelen fungerer bare for dato-tider nyere enn år 1970 (som betyr at du mister alt ekstra rekkevidde *pluss* 217 år, og det ekstra området er sannsynligvis (angivelig) en av de 2 største proffene Til «DateTime2» om enn sannsynligvis ikke nødvendig i de fleste brukstilfeller), og det er ikke nødvendigvis trivielt å gjøre det støtte mer rekkevidde på grunn av mulige numeriske overløpsproblemer.

og ja, jeg skjønner at du også kan «Kaste» Til «DateTime» først (og om nødvendig tilbake igjen til «DateTime2»), men du vil miste ekstra presisjon og igjen, det ekstra området (alle før år 1753) fordelene med «DateTime2» vs «DateTime» som igjen er trolig den 2 største og også på samme tid, sannsynligvis ikke sannsynlig nødvendig, noe som ber om spørsmålet hvorfor bruke det når du mister de implisitte / enkle konverteringene til flytende punkt numerisk (# dager) for tillegg / subtraksjon / «alder» (vs datediff) / avg Calcs fordel som er en stor i min erfaring.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.

More: