इम्पोर्ट किए गए डेटा को time zone सहित dates में बदलें
अब जब आपने तीनों type-safe conversion फंक्शनों को देख लिया है, तो आप इन्हें वास्तविक datasets पर लागू कर सकते हैं. इस अभ्यास में, हम dbo.ImportedTime टेबल से डेटा parse करेंगे. इस टेबल में डेटा लोड करने के लिए हमने एक अलग एप्लिकेशन का उपयोग किया था और इसे आपने पिछले अभ्यास में देखा था. इस बार, हम सभी rows का डेटा प्राप्त करेंगे, न कि केवल वही जिन्हें importing एप्लिकेशन ने valid चिह्नित किया था.
यह अभ्यास पाठ्यक्रम का हिस्सा है
SQL Server में Time Series Analysis
अभ्यास निर्देश
EventDatescommon table expression के अंदर missingTRY_XXX()फंक्शन नाम भरें.EventDateOffsetवाली event dates को'UTC'में convert करें. इस आउटपुट कोEventDateUTCनाम दें.AT TIME ZONEका उपयोग करकेEventDateOffsetवाली event dates को'US Eastern Standard Time'में convert करें. इस आउटपुट कोEventDateUSEastनाम दें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
WITH EventDates AS
(
SELECT
-- Fill in the missing try-conversion function
___(DATETIME2(3), it.EventDate) AT TIME ZONE it.TimeZone AS EventDateOffset,
it.TimeZone
FROM dbo.ImportedTime it
INNER JOIN sys.time_zone_info tzi
ON it.TimeZone = tzi.name
)
SELECT
-- Fill in the approppriate event date to convert
CONVERT(NVARCHAR(50), ed.EventDateOffset) AS EventDateOffsetString,
CONVERT(DATETIME2(0), ed.EventDateOffset) AS EventDateLocal,
ed.TimeZone,
-- Convert from a DATETIMEOFFSET to DATETIME at UTC
CAST(ed.EventDateOffset AT TIME ZONE '___' AS DATETIME2(0)) AS EventDateUTC,
-- Convert from a DATETIMEOFFSET to DATETIME with time zone
CAST(ed.EventDateOffset ___ ___ ___ 'US Eastern Standard Time' AS DATETIME2(0)) AS EventDateUSEast
FROM EventDates ed;