数据表
1 seqID int 4 0
0 CardID varchar 10 1
0 MoneyCard varchar 80 0
0 AddDay int 4 0
0 SellMan varchar 20 1
0 HardCode varchar 40 1
0 CreateDays varchar 20 1
0 valid int 4 1

解决方案 »

  1.   

    无法支持要求的属性===》
    跟sql語句沒关系,上述语句至少没问题
      

  2.   

    硬要看sql的问题,可能CreateDays 不是datetime型,是不是所有的data都可以转成datetime ?
    我估计是前台程式的问题。
      

  3.   

    试试看 select * from CardInfor where isdate(CreateDays)=0 看有没有资料?
      

  4.   

    把CreateDays类型改成DATETIME试试,我估计是有些数据不是合法的日期类型。
      

  5.   

    select * from CardInfor where isdate(CreateDays)=0无结果,
    时间格式都正确,都是getdate写进去的怎么看数据库日志啊,小弟现在一筹莫展啊
      

  6.   

    同意,select *, 
    case  when dateadd(dd,AddDay,CreateDays) > getdate() then 1 else 0 end as OnTime , 
    (AddDay - datediff(dd,CreateDays,getdate())) as LeftDays 
    from CardInfor where CardID in (select CardID from OpenUser where HardCode='0000000000000000000000000') 
      and isdate(CreateDays)=1  ---加上這句試試.
      

  7.   

    select *, case when dateadd(dd,AddDay,CreateDays) > getdate() then 1 else 0 end as OnTime , (AddDay - datediff(dd,CreateDays,getdate())) as LeftDays from CardInfor where CardID in (select CardID from OpenUser where HardCode='0000000000000000000000000') and isdate(CreateDays)=1 ---加上這句試試.加上这句问题还是没解决!