MySQL自定义函数计算年龄
2014-11-24 18:07
791 查看
DROP FUNCTION countage;
DELIMITER //
CREATE FUNCTION countage(birthday VARCHAR(15))
//参数birthday 为日期格式
RETURNS INT(10)
LANGUAGE SQL DETERMINISTIC NO SQL SQL SECURITY DEFINER
BEGIN
DECLARE age INT(10);
IF birthday IS NULL THEN
RETURN '';
END IF;
SET age = YEAR(CURDATE()) - YEAR(birthday) - 1;
IF MONTH(CURDATE()) = MONTH(birthday) THEN
IF DAY(CURDATE()) > DAY(birthday) THEN
SET age = age + 1;
END IF;
ELSEIF MONTH(CURDATE()) > MONTH(birthday) THEN
SET age = age +1;
END IF;
RETURN age;
END//
DELIMITER ;
DELIMITER //
CREATE FUNCTION countage(birthday VARCHAR(15))
//参数birthday 为日期格式
RETURNS INT(10)
LANGUAGE SQL DETERMINISTIC NO SQL SQL SECURITY DEFINER
BEGIN
DECLARE age INT(10);
IF birthday IS NULL THEN
RETURN '';
END IF;
SET age = YEAR(CURDATE()) - YEAR(birthday) - 1;
IF MONTH(CURDATE()) = MONTH(birthday) THEN
IF DAY(CURDATE()) > DAY(birthday) THEN
SET age = age + 1;
END IF;
ELSEIF MONTH(CURDATE()) > MONTH(birthday) THEN
SET age = age +1;
END IF;
RETURN age;
END//
DELIMITER ;
相关文章推荐
- 自定义oracle版函数来计算年龄(规则一)
- 给Mysql加自定义函数计算百分位数(percentile)。
- 数据库快照,自定义函数与计算列
- 两个mysql自定义函数
- [MSSQL]日期集合-周、月、季度、年等计算以及自定义函数
- sql 语句 编写一个函数用来精确计算某个人的当前年龄(精确到一位小数),比如:20.3岁
- Access里自定义类似MySQL group_concat 的函数
- [原创]Mysql自定义函数
- 第13周报告2:定义自定义函数,计算sin和cos的近似值
- 金和oa:自定义表单函数计算一段时期内的工作日
- mysql建立自定义函数的问题
- MySQL自定义函数
- MSSQL 和 Mysql 切割字符串 自定义函数与存储过程
- MySQL中计算sql语句影响行数的函数
- SQLServer向MySQL移植笔记(一)自定义函数
- PHP计算年龄的函数
- 计算指定年月的最后一天的自定义函数
- 根据当前时间计算年龄的函数
- 编写阶乘计算精确值的自定义函数
- SQL日期集合-周、月、季度、年等计算以及自定义函数