Heim > Datenbank > MySQL-Tutorial > Wie kann ich numerische Werte aus Zeichenfolgen in MySQL-Abfragen extrahieren?

Wie kann ich numerische Werte aus Zeichenfolgen in MySQL-Abfragen extrahieren?

Patricia Arquette
Freigeben: 2024-12-04 13:18:10
Original
205 Leute haben es durchsucht

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

Erhalten numerischer Werte aus Zeichenfolgen in MySQL-Abfragen

Ein Benutzer stieß auf eine Nichtübereinstimmung zwischen zwei Spalten mit Preisen und suchte nach einer Lösung, um die numerischen Werte zu extrahieren Wert aus der Zeichenfolgendarstellung in der Spalte „price_display“ und aktualisieren Sie die entsprechende Preisspalte.

Ein erfolgreicher Ansatz verwendete eine Funktion, die speziell Extrahierte Ziffern aus der Zeichenfolge und berücksichtigt so verschiedene Präfixe oder Postfixe. Diese Funktion mit der Bezeichnung „Ziffern“ wurde wie folgt erstellt:

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;
Nach dem Login kopieren

Um ihre Wirksamkeit zu demonstrieren, betrachten Sie die Abfrage:

SELECT digits('.00Fr');
Nach dem Login kopieren

Die Ausgabe wäre „1000“, passend zu erwarteter numerischer Wert. Diese angepasste Funktion bietet eine zuverlässige Methode zum Extrahieren numerischer Werte aus Zeichenfolgen in MySQL-Abfragen und geht dabei auf die spezifischen Anforderungen des Benutzers ein.

Das obige ist der detaillierte Inhalt vonWie kann ich numerische Werte aus Zeichenfolgen in MySQL-Abfragen extrahieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage