ホームページ > データベース > mysql チュートリアル > MySQL クエリの文字列から数値を抽出するにはどうすればよいですか?

MySQL クエリの文字列から数値を抽出するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-04 13:18:10
オリジナル
205 人が閲覧しました

How Can I Extract Numerical Values from Strings in MySQL Queries?

MySQL クエリの文字列から数値を取得

価格を含む 2 つの列の間に不一致が発生したため、あるユーザーは数値を抽出する解決策を探しました。 Price_display 列の文字列表現から値を取得し、対応する価格を更新しますcolumn.

成功したアプローチの 1 つは、文字列から数字を特別に抽出する関数を使用し、それによってさまざまな接頭辞や接尾辞に対応しました。 「数字」というラベルが付けられたこの関数は、次のように作成されました:

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;
ログイン後にコピー

その有効性を示すために、次のクエリを考えてみましょう:

SELECT digits('.00Fr');
ログイン後にコピー

出力は '1000' となり、期待される数値。このカスタマイズされた関数は、MySQL クエリ内の文字列から数値を抽出する信頼性の高い方法を提供し、ユーザーの特定の要件に対応します。

以上がMySQL クエリの文字列から数値を抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート