Heim >Datenbank >MySQL-Tutorial >Wie kann ich aufeinanderfolgende Ziffern aus einem MySQL-Textfeld extrahieren?
Aufeinanderfolgende Ziffern aus einem MySQL-Textfeld extrahieren
Das Bearbeiten numerischer Daten aus einem Textfeld kann in MySQL eine Herausforderung sein. Um aufeinanderfolgende Ziffern aus einem solchen Feld zu extrahieren, wird empfohlen, MySQL-Funktionen oder externe Bibliotheken zu verwenden.
Verwendung der Bibliothek LIB_MYSQLUDF_PREG:
Die Bibliothek LIB_MYSQLUDF_PREG bietet leistungsstarke Funktionen für reguläre Ausdrücke. einschließlich PREG_CAPTURE für die Teilzeichenfolgenextraktion. Durch die Installation dieser Bibliothek in MySQL können Sie auf folgende Funktionen zugreifen:
Benutzerdefinierte Funktion für einfacher Extraktion:
Alternativ kann die folgende benutzerdefinierte MySQL-Funktion für die grundlegende Extraktion erstellt werden:
CREATE FUNCTION REGEXP_EXTRACT(string TEXT, exp TEXT) RETURNS TEXT DETERMINISTIC BEGIN -- Extract longest matching substring adjusted for ^ or $ in regex
Verwendung:
Zu verwenden Rufen Sie diese Funktion wie folgt auf:
SELECT REGEXP_EXTRACT(originaltext, '[0-9][0-9]') AS extracted_digits FROM source WHERE originaltext regexp '[0-9][0-9]'
Dadurch wird aus jedem Treffer das erste passende Ziffernpaar extrahiert Originaltext. Bei Bedarf können der Abfrage zusätzliche Kriterien hinzugefügt werden, beispielsweise der Vergleich extrahierter Ziffern mit einem Wert.
Das obige ist der detaillierte Inhalt vonWie kann ich aufeinanderfolgende Ziffern aus einem MySQL-Textfeld extrahieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!