首页 > 数据库 > MySQL > 正文

MySql判断汉字、日期、数字的具体函数

2024-07-24 13:09:25
字体:
来源:转载
供稿:网友
这篇文章主要大家详细介绍了MySql判断汉字、日期、数字的具体函数,感兴趣的小伙伴们可以参考一下
 

几个平常用的mysql函数,MySql判断汉字、日期、数字的具体函数分享给大家,具体内容如下

1.判断字符串是否为汉字 返回值:1-汉字 0-非汉字

DROP FUNCTION IF EXISTS fc_is_hanzi;CREATE FUNCTION fc_is_hanzi(p_str VARCHAR(1024))  RETURNS int(11)  NOT DETERMINISTIC  SQL SECURITY DEFINER  COMMENT '检查字符串是否为汉字'BEGIN/*检查字符串是否为汉字 返回值:1-汉字 0-非汉字*/  DECLARE _ret, i, other_cnt, l_acode INT DEFAULT 0;  SET _ret = 0;  SET i = 1;  SET other_cnt = 0;  SET l_acode = 0;  WHILE i <= CHAR_LENGTH(p_str) DO    SET l_acode = ASCII(SUBSTRING(p_str, i, 1));    IF l_acode<124 or l_acode>254 THEN      SET other_cnt = other_cnt + 1;    END IF;    SET i = i + 1;  END WHILE;  IF other_cnt = 0 THEN    SET _ret = 1;  ELSE    SET _ret = 0;  END IF;  RETURN _ret;END;

2.判断日期格式是否正确(返回值:1-正确 0-错误)

DROP FUNCTION IF EXISTS fc_ck_date;CREATE FUNCTION fc_ck_date(p_cont CHAR(32) )  RETURNS tinyint(4)  NOT DETERMINISTIC  SQL SECURITY DEFINER  COMMENT '判定日期格式是否正确'BEGIN/*判定日期格式是否正确(返回值:1-正确 0-错误)*//*输入值格式为:yyyyMMdd 或 yyyy-MM-dd*/IF(SELECT DATE_FORMAT(p_cont,'%Y%m%d')) IS NULL THEN  RETURN 0;ELSE  RETURN 1;END IF;END;

3.判断字符串是否为纯数字(返回值:1-为纯数字 0-非纯数字)

DROP FUNCTION IF EXISTS fc_is_num;CREATE FUNCTION fc_is_num(p_string VARCHAR(32) )  RETURNS int(4)  NOT DETERMINISTIC  SQL SECURITY DEFINER  COMMENT '检查字符串是否为纯数字'BEGIN/*检查字符串是否为纯数字*//*返回值:1-为纯数字 0-非纯数字*/   DECLARE iResult INT DEFAULT 0;   SELECT p_string REGEXP '^[0-9]*$' INTO iResult;   IF iResult = 1 THEN    RETURN 1;   ELSE     RETURN 0;   END IF;END;

以上就是MySql判断汉字、日期、数字的三段函数,希望对大家的学习有所帮助。



注:相关教程知识阅读请移步到MYSQL教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表