CURRENT_TIMESTAMP
関数は現在の日付と時刻を日時として返します 価値。この値は、SQLServerのインスタンスが実行されているコンピューターのオペレーティングシステムから取得されます。
この関数は、T-SQL GETDATE()
と同等のANSISQLです。 機能するので、好きなものを使うことができます。どちらの関数も、T-SQL SYSDATETIME()
よりも日付範囲が低く、デフォルトの分数精度が低いことに注意してください。 関数( datetime2(7)を返します 値)。
この記事では、CURRENT_TIMESTAMP
の例を紹介します。 関数。他の関数と一緒に使用して、関心のある値を返す方法を含みます。
構文
構文は次のようになります:
CURRENT_TIMESTAMP
したがって、引数なしでこの関数を呼び出すだけです。
例
SELECT
を使用する基本的な例を次に示します。 CURRENT_TIMESTAMP
から現在の日付と時刻を返すステートメント :
SELECT CURRENT_TIMESTAMP AS Result;
結果:
+-------------------------+ | Result | |-------------------------| | 2018-06-16 00:06:36.740 | +-------------------------+
日付の一部を抽出
戻り値の一部のみが必要な場合は、DATEPART()
を使用できます。 興味のある日時のその部分だけを返します。
例:
SELECT DATEPART(month, CURRENT_TIMESTAMP) AS Result;
結果:
+----------+ | Result | |----------| | 6 | +----------+
MONTH()
を使用した別の例を次に示します。 働き。結果は同じです。
SELECT MONTH(CURRENT_TIMESTAMP) AS Result;
結果:
+----------+ | Result | |----------| | 6 | +----------+
これらの関数は両方とも現在の月を返します。ただし、月番号を表す整数として返されます。
月の名前が必要な場合 代わりに、DATENAME()
を使用できます。 :
SELECT DATENAME(month, CURRENT_TIMESTAMP) AS Result;
結果:
+----------+ | Result | |----------| | June | +----------+
日付をフォーマットする
他のT-SQL関数を使用して、必要に応じて日付をフォーマットすることもできます。
FORMAT()
の使用例を次に示します。 結果をフォーマットする関数:
SELECT FORMAT(CURRENT_TIMESTAMP, 'd', 'en-US') AS 'd, en-US', FORMAT(CURRENT_TIMESTAMP, 'd', 'en-gb') AS 'd, en-gb', FORMAT(CURRENT_TIMESTAMP, 'D', 'en-US') AS 'D, en-US', FORMAT(CURRENT_TIMESTAMP, 'D', 'en-gb') AS 'D, en-gb';
結果:
+------------+------------+-------------------------+--------------+ | d, en-US | d, en-gb | D, en-US | D, en-gb | |------------+------------+-------------------------+--------------| | 6/16/2018 | 16/06/2018 | Saturday, June 16, 2018 | 16 June 2018 | +------------+------------+-------------------------+--------------+
SQLServerで日付と時刻をフォーマットする方法のその他の例。
値を増やして違いを見つける
DATEDIFF()
のような関数を使用できます 現在の日付と別の日付の差を返します。
DATEADD()
の使用例を次に示します。 現在の日付に月を追加してから、日数の違いを確認するには:
DECLARE @date1 datetime2 = CURRENT_TIMESTAMP; DECLARE @date2 datetime2 = DATEADD(month, 1, CURRENT_TIMESTAMP); SELECT DATEDIFF(day, @date1, @date2) AS Result;
結果:
+----------+ | Result | |----------| | 30 | +----------+