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

时间:2021-05-24

几个平常用的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 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 '判定日期格式是否正确'BEGINIF(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 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判断汉字、日期、数字的三段函数,希望对大家的学习有所帮助。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章