始める無料で始める

型安全な変換関数のパフォーマンスをテストする

直前の2つの演習では、TRY_CAST()TRY_CONVERT()TRY_PARSE() 関数を見てきました。これらの関数は常に同じ性能を発揮するわけではありません。この演習では、カレンダーテーブル内のすべての日付に対してパフォーマンステストを実行します。

作業しやすいように、dbo.Calendar テーブルの日付を、一時テーブル DateText に事前に読み込んであります。そこには DateText という名前の単一の NVARCHAR(50) 列があります。

最初の3つのステップでは、指示は同じです。該当する関数呼び出しを完成させるために、抜けている箇所を埋めてください。その後、各操作にかかった時間を確認し、結果を覚えておきましょう。ステップ4でその結果をまとめます。

この演習はコースの一部です

SQL Serverで学ぶ時系列分析

コースを見る

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

-- 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;
コードを編集して実行