求大神解答mysql时间函数问题~真心很难
请问mysql中的时间函数DATE_ADD()的返回值是什么啊?
自己写了一个函数调用到DATE_ADD(),但返回值为(NULL)。
烦恼N久,求大神解救啊~~~~~~
CREATE DEFINER=`root`@`localhost` FUNCTION `allocateRooms`() RETURNS YEAR
BEGIN
DECLARE d YEAR;
SELECT lesson_t.year INTO @year1 FROM lesson_t WHERE courNO = 1;
SELECT DATE_ADD(@year1,INTERVAL 3 YEAR) INTO d;
RETURN d;
END$$
DELIMITER ;
PS:select d := DATE_ADD(@year1,INTERVAL 3 YEAR);
set d:= DATE_ADD(@year1,INTERVAL 3 YEAR);
都试过了,但还是为空。
MySQL
select
函数
时间函数
------解决方案--------------------DATE_ADD(date,INTERVAL expr type)
第一个参数要为date类型。你确定lesson_t.year 为date类型吗?
且声明的参数也是date?
------解决方案--------------------同问,别告诉我们 lesson_t.year 是2013这样的内容。
如果这样,也别脱裤子放屁了,直接 lesson_t.year + 3,否则日期型,或者符合日期格式的字符串都可以