👩‍💻

SQL Server での先月月初、先月末の日付取得

2023/04/24に公開

SQL Server での先月月初、先月末の日付取得

SQL Server のタイムゾーンがUTCになっていると以下のように取得しても、JST になってしまう。

DECLARE @InputDate DATETIME = GETDATE();  
SELECT	DATEADD(dd, 1, EOMONTH (@InputDate , -2)),
	EOMONTH(@InputDate, -1)
2023-03-01	2023-03-31

9時間ずらしてあげることでUTCでの時刻が取れる。

DECLARE @InputDate DATETIME = GETDATE();  

SELECT	DATEADD(HOUR, -9, CONVERT(datetime, DATEADD(dd, 1, EOMONTH (@InputDate , -2)))),
	DATEADD(HOUR, -9, CONVERT(datetime, DATEADD(dd, 1, EOMONTH (@InputDate , -1))))
2023-02-28 15:00:00.000	2023-03-31 15:00:00.000

mac でLocalのSQL Serverを立てる方法は以下を参照

https://learn.microsoft.com/ja-jp/sql/azure-data-studio/download-azure-data-studio?view=sql-server-ver15&tabs=redhat-install%2Credhat-uninstall

GitHubで編集を提案

Discussion