首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

输入一个日期 想得到这个月的起始时间和结束时间()

2012-04-07 
输入一个日期 想得到这个月的起始时间和结束时间(在线等)如:2007-08-0920:20:02返回结果起始时间:2007-08-

输入一个日期 想得到这个月的起始时间和结束时间(在线等)
如:2007-08-09   20:20:02
返回结果   起始时间:2007-08-01   00:00:00


[解决办法]
declare @date datetime
set @date= '2007-08-09 20:20:02 '

select cast(convert(char(8),@date,120)+ '01 ' as datetime),dateadd(ss,-1,convert(char(8),dateadd(mm,1,@date),120)+ '01 ')

/*
------------------------------------------------------ ------------------------------------------------------
2007-08-01 00:00:00.000 2007-08-31 23:59:59.000
*/
[解决办法]
好象需要修改下

declare @date datetime
set @date= '2007-08-09 20:20:02 '

select cast(convert(char(8),@date,120)+ '01 ' as datetime),dateadd(ss,-1,convert(char(8),dateadd(mm,1,@date),120)+ '01 ')

[解决办法]
declare @date datetime
set @date= '2007-8-9 '

select convert(datetime,convert(char(07),@date,120)+ '-01 '),
dateadd(second,-1,dateadd(month,1,convert(char(07),@date,120)+ '-01 '))


------------------------------------------------------ ------------------------------------------------------
2007-08-01 00:00:00.000 2007-08-31 23:59:59.000

热点排行