ユーザーが指定した月の日数を取得したい。私はこれを使用しており、2 月とうるう年を除くほとんどの月で機能します。29日ではなく28日と表示されています。これを解決できますか?
begin
declare @year int
declare @month int
select @year = 2012
select @month = DATEPART(mm,CAST('August'+ ' 2012' AS DATETIME))
select datediff(day,
dateadd(day, 0, dateadd(month, ((@year - 2012) * 12) + @month - 1, 0)),
dateadd(day, 0, dateadd(month, ((@year - 2012) * 12) + @month, 0))) as number_of_days
end
または、そうでない場合は、これを行う別の方法を教えてください。@year
andを使用する必要があり@month
、日を見つけるためのコードは任意です。