当前位置:编程学习 > C#/ASP.NET >>

如何判断一个日期超过了20天!?

注册日期:RegDate
当前日期 NowDate
如何判断 NowDate 是否是距离RegDate 20天 !
--------------------编程问答--------------------
declare @RegDate as datetime
select @RegDate='2010-04-03'
select datediff(day,@RegDate,getdate())

-----------
20

(1 行受影响)
--------------------编程问答--------------------
declare @RegDate as datetime
declare @NowDate as datetime
select @RegDate='2010-04-03',@NowDate=getdate()
select datediff(day,@RegDate,@NowDate) as d

d
-----------
20

(1 行受影响)
--------------------编程问答--------------------

说明:日程安排提前五分钟提醒
select * from 日程安排 where datediff('minute',f开始时间,getdate())>5

按照此模仿一下就行了 --------------------编程问答--------------------
引用 2 楼 bancxc 的回复:
SQL code
declare @RegDate as datetime
declare @NowDate as datetime
select @RegDate='2010-04-03',@NowDate=getdate()
select datediff(day,@RegDate,@NowDate) as d

d
-----------
20

(1 行受影响)


up --------------------编程问答--------------------
引用 1 楼 bancxc 的回复:
C# code
declare @RegDate as datetime
select @RegDate='2010-04-03'
select datediff(day,@RegDate,getdate())

-----------
20

(1 行受影响)


 正确 --------------------编程问答-------------------- 如果两个都是Datetime格式的话

            DateTime regdate = new DateTime(2010, 4, 3);
            DateTime now = DateTime.Now;
            if (regdate.AddDays(20).Date == now.Date)
            {
                MessageBox.Show("already 20 days past!");
            }
--------------------编程问答-------------------- 可以用TimeSpan要获取两个时间的间隔 --------------------编程问答-------------------- datediff --------------------编程问答-------------------- 是sql中还是form,我是按form里理解的@!@ --------------------编程问答-------------------- 将注册日期作为一个字段存储在数据库中
然后登陆的时候获得当前日期,并取出数据库的注册日期进行比较
  DateTime dt = DateTime.Now;
              TimeSpan ts= dt.Subtract(注册日期);
              int day = ts.Days; --------------------编程问答-------------------- 计算两个时期的时间间隔 --------------------编程问答-------------------- datediff(day,@RegDate,getdate())>20 --------------------编程问答--------------------

DateTime RegDate =DateTime.Parse("2010-04-05");
DateTime NowDate = DateTime.Now;
if (NowDate.AddDays(-20).CompareTo(RegDate) > 0)
{
    MessageBox.Show("超过20天");
}
else 
{
    MessageBox.Show("20天内");
}
--------------------编程问答-------------------- 学习了……嘿嘿,先记着! --------------------编程问答--------------------
引用 9 楼 lpingz 的回复:
是sql中还是form,我是按form里理解的@!@

sql里面的! --------------------编程问答--------------------
引用 15 楼 crius 的回复:
引用 9 楼 lpingz 的回复:
是sql中还是form,我是按form里理解的@!@

sql里面的!


sql里的去SQL SERVER 版啊  。。。   按form写的  晕 --------------------编程问答-------------------- 不是有TimeSpan么  两个时间一减就出来了饿。。。 --------------------编程问答--------------------
System.TimeSpan ts = DateTime.Now - model.Expiration.Value;
                if (ts.TotalSeconds>0)
                    model.Status = 5;


这样判断,到秒! --------------------编程问答-------------------- SQL 里datediff(day,RegDate,NowDate)
C#里 convest.todatetime(RegDate).add(20)=convest.todatetime(NowDate) --------------------编程问答--------------------
引用 10 楼 liuyileneal 的回复:
将注册日期作为一个字段存储在数据库中
然后登陆的时候获得当前日期,并取出数据库的注册日期进行比较
  DateTime dt = DateTime.Now;
              TimeSpan ts= dt.Subtract(注册日期);
              int day = ts.Days;

时间间隔。。。。 --------------------编程问答--------------------
引用 2 楼 bancxc 的回复:
SQL code
declare @RegDate as datetime
declare @NowDate as datetime
select @RegDate='2010-04-03',@NowDate=getdate()
select datediff(day,@RegDate,@NowDate) as d

d
-----------
20

(1 行受影响)

学习 --------------------编程问答-------------------- create database temp
go
use temp
go
create table tem
(
TID int identity ,
RegDate datetime,
NowDate datetime

)
go
alter table tem add constraint df_NowDate default getdate() for Nowdate
insert into tem values('2010-4-3',default)
insert into tem values('2010-4-4',default)
go

select * from tem

create proc p_tem  --创建一个 "判断 NowDate 是否是距离 RegDate 20天" 存储过程
@where int  --这是判断的编号
as
declare @NomberOne int,@NomberTwo int
select @NomberOne = (select datepart(dd,dateadd(dd,20,RegDate)) from tem where tid = @where),@NomberTwo = (select datepart(dd,NowDate) from tem where tid = @where)
if @NomberOne = @NomberTwo
print 'have' --判断:若有就输出“have”
else
print 'no' --判断:若没有就输出“no”

exec p_tem 2 --调用存储过程

有点多,请耐心看;也可拿到数据库里一试!谢谢! --------------------编程问答-------------------- timespan......2个时间相减...

 
每天回帖即可获得10分可用分!小技巧:教您如何更快获得可用分   --------------------编程问答-------------------- 这不是c#论坛马 --------------------编程问答-------------------- select * from 日程安排 where datediff('d',f开始时间,getdate())>20
--------------------编程问答-------------------- 這是日期函數 --------------------编程问答-------------------- mark --------------------编程问答-------------------- 支持2楼
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,