月番号ごとに私のポーランド語(または他の言語)の名前を返すSQL Serverの組み込み関数はありますか?または、独自の関数を作成する必要がありますか?
例えば
GetMonthName(11) => Listopad (November)
月番号ごとに私のポーランド語(または他の言語)の名前を返すSQL Serverの組み込み関数はありますか?または、独自の関数を作成する必要がありますか?
例えば
GetMonthName(11) => Listopad (November)
関数Monthまたはdatepart"month"を使用して、日付/時刻から月番号を返すことができます。次に、DATENAME関数を使用できます。
SELECT DATENAME(month, GETDATE()) AS 'Month Name'
戻り値は、SET LANGUAGEを使用して設定された言語環境、およびログイン用の「デフォルト言語の構成」サーバー構成オプションによって異なります。
したがって、Jacekのコメントによると、これは次のように要約できます。
SET LANGUAGE Polish SELECT DATENAME(month, GETDATE()) AS 'Month Name'
文字通り月番号だけの場合は、上記のアプローチを適用できるように、この月番号を組み込んだ日時変数を作成する必要があります。SQL Server 2012では、 DATETIMEFROMPARTSを使用できます。
SELECT @RandomDate = DATETIMEFROMPARTS(2012, @MonthNumber, 1, 1, 1, 1, 0)
SET LANGUAGE Polish SELECT DATENAME(month, @RandomDate) AS 'Month Name'