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 サイトの他の関連記事を参照してください。