Skip to content

Instantly share code, notes, and snippets.

@codewzrd
Last active September 12, 2019 16:35
Show Gist options
  • Save codewzrd/35442878a9f7fdd17f6cf706bc77924b to your computer and use it in GitHub Desktop.
Save codewzrd/35442878a9f7fdd17f6cf706bc77924b to your computer and use it in GitHub Desktop.
SQL Server CASE Statement to Convert Java Timezone to Windows Timezone
CASE
WHEN s.EventTimeZone = 'America/New_York' THEN s.EventDateTime
WHEN s.EventTimeZone = 'Asia/Tokyo' THEN CAST(CONCAT(s.EventDateTime AS DATETIME2) AT TIME ZONE 'Tokyo Standard Time' AT TIME ZONE 'Eastern Standard Time'
WHEN s.EventTimeZone = 'Atlantic/Reykjavik' THEN CAST(s.EventDateTime AS DATETIME2) AT TIME ZONE 'Greenwich Standard Time' AT TIME ZONE 'Eastern Standard Time'
WHEN s.EventTimeZone = 'Australia/Sydney' THEN CAST(s.EventDateTime AS DATETIME2) AT TIME ZONE 'AUS Eastern Standard Time' AT TIME ZONE 'Eastern Standard Time'
WHEN s.EventTimeZone = 'Europe/Amsterdam' THEN CAST(s.EventDateTime AS DATETIME2) AT TIME ZONE 'W. Europe Standard Time' AT TIME ZONE 'Eastern Standard Time'
WHEN s.EventTimeZone = 'Europe/Copenhagen' THEN CAST(s.EventDateTime AS DATETIME2) AT TIME ZONE 'W. Europe Standard Time' AT TIME ZONE 'Eastern Standard Time'
WHEN s.EventTimeZone = 'Europe/Helsinki' THEN CAST(s.EventDateTime AS DATETIME2) AT TIME ZONE 'FLE Standard Time' AT TIME ZONE 'Eastern Standard Time'
WHEN s.EventTimeZone = 'Europe/London' THEN CAST(s.EventDateTime AS DATETIME2) AT TIME ZONE 'GMT Standard Time' AT TIME ZONE 'Eastern Standard Time'
WHEN s.EventTimeZone = 'Europe/Oslo' THEN CAST(s.EventDateTime AS DATETIME2) AT TIME ZONE 'W. Europe Standard Time' AT TIME ZONE 'Eastern Standard Time'
WHEN s.EventTimeZone = 'Europe/Riga' THEN CAST(s.EventDateTime AS DATETIME2) AT TIME ZONE 'FLE Standard Time' AT TIME ZONE 'Eastern Standard Time'
WHEN s.EventTimeZone = 'Europe/Stockholm' THEN CAST(s.EventDateTime AS DATETIME2) AT TIME ZONE 'W. Europe Standard Time' AT TIME ZONE 'Eastern Standard Time'
WHEN s.EventTimeZone = 'Europe/Tallinn' THEN CAST(s.EventDateTime AS DATETIME2) AT TIME ZONE 'FLE Standard Time' AT TIME ZONE 'Eastern Standard Time'
WHEN s.EventTimeZone = 'Europe/Vilnius' THEN CAST(s.EventDateTime AS DATETIME2) AT TIME ZONE 'FLE Standard Time' AT TIME ZONE 'Eastern Standard Time'
ELSE NULL
END AS EventDateTime
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment