case when DateDiff(dd,借书日期,getdate())>30 then DateDiff(dd,借书日期,getdate())*[单价]*1.012 else 0 end
大佬,你是用什么数据库啊? SQL SERVER用CASE 就是: 罚款=case when DateDiff(dd,借书日期,getdate())>30 then DateDiff(dd,借书日期,getdate())*[单价]*1.012 else 0 end或: 罚款=case when getdate()-借书日期>30 then (getdate()-借书日期)*[单价]*1.012 else 0 end
if exists(select name from tb where getdate()-借书日期>30)
print '罚款'
SQL SERVER用CASE
就是:
罚款=case when DateDiff(dd,借书日期,getdate())>30 then DateDiff(dd,借书日期,getdate())*[单价]*1.012 else 0 end或:
罚款=case when getdate()-借书日期>30 then (getdate()-借书日期)*[单价]*1.012 else 0 end
服务器: 消息 403,级别 16,状态 1,行 1
对数据类型而言运算符无效。运算符为 multiply,类型为 datetime。第一种是可以的