Skip to main content

Mysql function to extract integer from alfa-numeric character

#3
SET GLOBAL log_bin_trust_function_creators=1;
DROP FUNCTION IF EXISTS digits;
DELIMITER |
CREATE FUNCTION digits( str CHAR(32) ) RETURNS CHAR(32)
BEGIN
  DECLARE i, len SMALLINT DEFAULT 1;
  DECLARE ret CHAR(32) DEFAULT '';
  DECLARE c CHAR(1);

  IF str IS NULL
  THEN
    RETURN "";
  END IF;

  SET len = CHAR_LENGTH( str );
  REPEAT
    BEGIN
      SET c = MID( str, i, 1 );
      IF c BETWEEN '0' AND '9' THEN
        SET ret=CONCAT(ret,c);
      END IF;
      SET i = i + 1;
    END;
  UNTIL i > len END REPEAT;
  RETURN ret;
END |
DELIMITER ;

SELECT digits('$10.00Fr');
select digits(hod),hod as org from darwindata limit 1;

#returns 1000

Comments

Popular posts from this blog

GIT command

https://kbroman.org/github_tutorial/pages/branching.html Note:- Always get pull request before working on any branch git pull  branch name or  git pull  origin branch name To commit code git commit -m"comment for changes" To push the code git push origin staging To hold the branch in the same state git stash To get the stashed branch in normal mode git stash pop If code conflict during git command or reverting conflict occur while git pull or branch chekout git reset -hard HEAD To get in working branch or switch to another branch git checkout staging To create a new branch git checkout -b branch name