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

〓〓〓〓〓〓〓〓〓日期比较有关问题〓〓〓〓〓〓〓〓〓

2012-01-20 
〓〓〓〓〓〓〓〓〓日期比较问题〓〓〓〓〓〓〓〓〓急死我了~~表aa开始日期bdatevarchar(50)如2007-05-01结束日期edatevarcha

〓〓〓〓〓〓〓〓〓日期比较问题〓〓〓〓〓〓〓〓〓
急死我了~~

表aa    
开始日期bdate     varchar(50)     如2007-05-01
结束日期edate     varchar(50)     如2007-06-26

想得到如下结果

select   rqzt   =   ????
       
日期区间已经过了今天---     上例即是       则为     执行完毕
日期区间包含今天   -------------             则为     执行中
日期区间在今天以后     ------                     则为     未执行


怎么弄???



[解决办法]
说详细点,rqzt是什么东西
你想得到什么东西
表aa结构是什么
[解决办法]
select rqzt=case when getdate()> convert(datetime,edate) then '执行完毕 ' when getedate() <convert(datetime,bdate) then '未行完毕 ' else '执行中 ' end from tablename

[解决办法]
if edate < convert(varchar(10), getdate(), 120)
--结束
else if edate = convert(varchar(10), getdate(), 120)
--执行中
else
--未执行
[解决办法]
select rqzt = case when datediff(dd,edate,getdate())> 0 then '执行完毕 '
when datediff(dd,bdate,getdate())> 0 and datediff(dd,edate,getdate()) <0 then '执行中 '
when datediff(dd,bdate,getdate()) <0 then '执行完毕 '
end
from 表aa

热点排行