MySQL での連続する 2 桁の抽出
提供された SQL クエリは、連続する 2 桁を含むテキスト フィールドを正常に識別します。ただし、これらの数値を別個のフィールドとして抽出するには、クエリに追加機能を組み込むことを検討してください。
オプション 1: LIB_MYSQLUDF_PREG の使用
このオープンソース ライブラリは、拡張された正規MySQL の式機能。 PREG_CAPTURE などの関数を提供し、文字列からの一致の抽出を可能にします。これらの関数にアクセスするには、このライブラリをインストールして構成します。
オプション 2: 正規表現抽出用のユーザー定義関数
最長一致する部分文字列を抽出するための REGEXP_EXTRACT のようなカスタム関数を作成します。提供された正規表現に基づきます。この関数は、'^' や '$' 区切り文字を含めるなど、特定の要件を処理するように微調整できます。
REGEXP_EXTRACT 関数は、特定のニーズに合わせて変更できます。
CREATE FUNCTION REGEXP_EXTRACT(string TEXT, exp TEXT) RETURNS TEXT DETERMINISTIC BEGIN ... (function code goes here) END
追加基準: より大きい数値20
数値をフィールドとして抽出したら、クエリに追加のフィルターを適用できます。
SELECT `id`, `number_extracted` FROM ( SELECT `id`, `originaltext` FROM `source` WHERE `originaltext` REGEXP '[0-9][0-9]' ) AS subquery WHERE `number_extracted` > 20
この拡張クエリは、抽出された数値が 20 を超える行を返します。これらの手法を組み合わせることで、MySQL クエリを改良して、必要に応じて連続した数字を抽出および操作できます。
以上がMySQL テキスト フィールドから 20 を超える連続した数字を抽出してフィルタリングするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。