zoukankan      html  css  js  c++  java
  • MySql判断汉字、日期、数字的具体函数

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

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

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    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-错误)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    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-非纯数字)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    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判断汉字、日期、数字的三段函数,希望对大家的学习有所帮助。

  • 相关阅读:
    三次请求(读-改-读)引出nibernate 一级缓存
    算法竞赛入门经典第一、二章摘记
    uva 10905 Children's Game
    uva 11205 The broken pedometer
    uva 10160 Servicing stations
    uva 208 Firetruck
    uva 167 The Sultan's Successors
    zoj 1016 Parencodings
    uva 307 Sticks
    uva 216 Getting in Line
  • 原文地址:https://www.cnblogs.com/wxb-km/p/6933867.html
Copyright © 2011-2022 走看看