FORMAT関数を使用することで、
・年月日(DATE型)
・年月日時分秒(DATETIME型)
から「年月」を取得できます!
当初は
・YEAR関数とMONTH関数を組み合わせれば良いのでは?
・CONVERT関数を使用すれば良いのでは?
と思い試行錯誤しましたが、
少なくとも私には実現できませんでした。
FORMAT関数を使用することで
実現できました!
FORMAT関数とは
日付データの書式を変更する関数です。
「Transact-SQL(T-SQL)」に含まれています。
よってSQL Serverでのみ使用できます。
SQL
GETDATE関数を使用して、DATE型及びDATETIME型の変数へシステムのタイムスタンプを設定します。
その後、FORMAT関数を使用して、「年月」を取得します。
--DATE型及びDATETIME型の変数を定義
DECLARE
@date DATE,
@dateTime DATETIME
--変数へシステムのタイムスタンプを設定
SET @date = GETDATE()
SET @dateTime = GETDATE()
SELECT FORMAT(@date,'yyyyMM') AS '年月日(DATE型)から「年月」を取得'
SELECT FORMAT(@dateTime,'yyyyMM') AS '年月日時分秒(DATETIME型)から「年月」を取得'
実行結果
「年月」を取得できました!
CONVERT関数はFORMAT関数とほぼ同様のことができますが、
「年月」を取得できるのはFORMAT関数だけです!
※冒頭で記載した通り、私には他の方法で「年月」を取得できませんでした。