Aan de slagGa gratis aan de slag

Converteren naar een datum-offset

Naast SWITCHOFFSET() kun je TODATETIMEOFFSET() gebruiken om een bestaande datum om te zetten naar een datumtype met een offset. Als onze begintijd in UTC is, moeten we corrigeren voor de tijdzone en vervolgens een offset toevoegen. Om voor de tijdzone te corrigeren, kunnen we handmatig uren (en minuten) optellen of aftrekken.

De sluitingsceremonie van de Zomerspelen van 2016 in Rio de Janeiro begon om 23.00 uur UTC op 21 augustus 2016. Beginnend met een string met die datum en tijd, kun je zien hoe laat het was in andere plaatsen. Voor de tijd in Phoenix, Arizona, weet je dat zij Mountain Standard Time hanteren, wat het hele jaar door UTC -7 is. De eilandengroep Tuvalu heeft een eigen tijd die 12 uur vóór op UTC ligt.

Deze oefening maakt deel uit van de cursus

Tijdreeksanalyse in SQL Server

Cursus bekijken

Oefeninstructies

  • Vul de tijd in voor Phoenix, Arizona; omdat dit Mountain Standard Time is, was dat UTC -07:00.
  • Vul de tijd in voor Tuvalu, dat 12 uur vóór op UTC ligt.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

DECLARE
	@OlympicsClosingUTC DATETIME2(0) = '2016-08-21 23:00:00';

SELECT
	-- Fill in 7 hours back and a '-07:00' offset
	___(DATEADD(HOUR, -___, @OlympicsClosingUTC), '___') AS PhoenixTime,
	-- Fill in 12 hours forward and a '+12:00' offset.
	___(DATEADD(HOUR, ___, @OlympicsClosingUTC), '___') AS TuvaluTime;
Code bewerken en uitvoeren