0

月の整数、つまり7月の7を返す列があります。私がやりたいのは、これを7にして、月末、つまり2012年7月31日を返すことです。これをSQLで実行できる関数はありますか?

ありがとう

4

2 に答える 2

3

このようなものはどうですか:

DECLARE @Month int
DECLARE @Year int

set @Month = 7
set @Year = datepart(year,getdate())

select DATEADD(day,-1,DATEADD(month,@Month,DATEADD(year,@Year-1900,0))) 

結果:

2012-07-31 00:00:00.000
于 2012-08-14T14:12:01.640 に答える
1

これを見てください。

http://blog.sqlauthority.com/2007/08/18/sql-server-find-last-day-of-any-month-current-previous-next/

これはあなたが興味を持っているビットです。

SELECT DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,GETDATE()),0))
于 2012-08-14T14:11:24.367 に答える