欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MySQL中的函数

程序员文章站 2022-05-07 19:35:58
转载自:http://www.cnblogs.com/chenpi/p/5137178.html 什么是函数 mysql中的函数与存储过程类似,都是一组SQL集; 与存储过程的区别 函数可以return值,存储过程不能直接return,但是有输出参数可以输出多个返回值; 函数可以嵌入到sql语句中使 ......

转载自:http://www.cnblogs.com/chenpi/p/5137178.html

什么是函数

mysql中的函数与存储过程类似,都是一组SQL集;

与存储过程的区别

函数可以return值,存储过程不能直接return,但是有输出参数可以输出多个返回值;

函数可以嵌入到sql语句中使用,而存储过程不能;

函数一般用于实现较简单的有针对性的功能(如求绝对值、返回当前时间等),存储过程用于实现复杂的功能(如复杂的业务逻辑功能);

mysql自带函数

mysql本身已经实现了一些常见的函数,如数学函数、字符串函数、日期和时间函数等等,不一一列举,这里简单的使用下几个函数:

求绝对值ABS:

MySQL中的函数

求ASCII:

MySQL中的函数

时间相关(NOW、CURRENT_DATE、CURRENT_TIME):

MySQL中的函数

自定义函数

自定义个函数,判断输入参数是否大于等于10:

MySQL中的函数
-- ----------------------------
-- Function structure for `func_compare`
-- ----------------------------
DROP FUNCTION IF EXISTS `func_compare`;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` FUNCTION `func_compare`(a int) RETURNS varchar(200) CHARSET utf8
BEGIN
    #Routine body goes here...
  IF a >= 10 THEN
        RETURN '大于等于10';
  ELSE
      RETURN '小于10';
  END IF;
END
;;
DELIMITER ;
MySQL中的函数

验证函数:

SELECT func_compare(9), func_compare(11)

执行结果:

MySQL中的函数