2017-10-04 94 views
1
create function fine1(date1 date,date2 date) returns int 
-> begin 
-> declare fine int; 
-> if datediff(date1,date2)>10 then 
-> set fine=(datediff-10)*5; 
-> return fine; 
-> end; 
-> // 

我写了这段代码,但它给了我一个错误。如何在mysql中使用datediff函数计算罚款

+2

什么样的错误,你也可以张贴错误? – Ravi

回答

1

你似乎缺少END IF

create function fine1(date1 date,date2 date) returns int 
-> begin 
-> declare fine int; 
-> if datediff(date1,date2)>10 then 
-> set fine=(datediff(date1,date2)-10)*5; <-- was not correct. 
-> end if; <-- was missing 
-> return fine; 
-> end; 

而且,好像你正在使用的计算,你已经错过了传递参数datediff功能。

set fine=(datediff-10)*5; 

应该

set fine=(datediff(date1,date2)-10)*5; 
+0

是的,它的工作......非常感谢你! – N97