4

MSSQL では、年が 'yyyy' の場合、開始日を 01/01/yyyy として返し、終了日を 12/31/yyyy として返すにはどうすればよいでしょうか。

4

4 に答える 4

4
declare @yyyy int; set @yyyy = 2009;
select DATEADD(yy,@yyyy-1900,0), DATEADD(yy,@yyyy-1899,-1)
于 2012-12-13T23:53:47.663 に答える
0

クエリ:

declare @yyyy int; set @yyyy = 2012;

SELECT convert(varchar,DATEADD(yyyy, @yyyy - 1900, 0), 101) AS StartDate, 
       convert(varchar,DATEADD(yyyy, @yyyy - 1899, -1), 101) AS EndDate
--OR
SELECT convert(varchar,'01/01/'+CAST(@yyyy as varchar(4)), 101) AS StartDate,
       convert(varchar,'12/31/'+CAST(@yyyy as varchar(4)), 101) AS EndDate

結果:

StartDate   EndDate
01/01/2012  12/31/2012
于 2012-12-14T08:31:06.390 に答える
0

MySQL データベースを使用している場合も、これを試すことができます。

 SELECT CONCAT ('01/01','/',2009) start_date ,concat ('12/31','/',2009) end_date 
 FROM table_name
于 2012-12-14T06:36:14.077 に答える