SQL Server で月初(1日)を取得する
DATEFROMPARTS 関数 で日付に変換
DECLARE @d DATETIME; -- @d にセットした日付の月初を求める SET @d = GETDATE(); SELECT DATEFROMPARTS(YEAR(@d), MONTH(@d), 1) AS 月初
DATEFROMPARTS 関数は、年月日を与えると、日付を返してくれます。文字列ではなく、日付型を返すのがポイントです。
(この関数は、SQL Server 2012 以前にはありませんでしたが、今さらそこまで古いバージョンを使っていることはない……よね?)