Test type-safe conversion function performance
In the last two exercises, we looked at the TRY_CAST()
, TRY_CONVERT()
, and TRY_PARSE()
functions. These functions do not all perform equally well. In this exercise, you will run a performance test against all of the dates in our calendar table.
To make it easier, we have pre-loaded dates in the dbo.Calendar
table into a temp table called DateText
, where there is a single NVARCHAR(50)
column called DateText
.
For the first three steps, the instructions will be the same: fill in missing values to complete the relevant function call. After doing that, observe the amount of time each operation takes and keep the results in mind. You will then summarize your results in step 4.
This exercise is part of the course
Time Series Analysis in SQL Server
Hands-on interactive exercise
Have a go at this exercise by completing this sample code.
-- Try out how fast the TRY_CAST() function is
-- by try-casting each DateText value to DATE
DECLARE @StartTimeCast DATETIME2(7) = SYSUTCDATETIME();
SELECT ___(___ ___ ___) AS TestDate FROM #DateText;
DECLARE @EndTimeCast DATETIME2(7) = SYSUTCDATETIME();
-- Determine how much time the conversion took by
-- calculating the date difference from @StartTimeCast to @EndTimeCast
SELECT
DATEDIFF(MILLISECOND, @StartTimeCast, @EndTimeCast) AS ExecutionTimeCast;