Bei der Arbeit mit MariaDB kann es vorkommen, dass Sie gelegentlich alle Zeilen zurückgeben müssen, die mindestens eine Ziffer enthalten.
In solchen Fällen kann das folgende Beispiel nützlich sein.
Beispiel
Angenommen, wir haben eine Tabelle namens Products
mit den folgenden Daten in seinem ProductName
Spalte:
SELECT ProductName
FROM Products;
Ergebnis:
+-------------------------------------+ | ProductName | +-------------------------------------+ | Left Handed Screwdriver | | Right Handed Screwdriver | | Bottomless Coffee Cup | | Smash 2000 Sledgehammer | | Chainsaw (includes 3 spare fingers) | | Bottomless Coffee Mugs (4 Pack) | +-------------------------------------+
Diese Spalte enthält offensichtlich Zeichendaten, aber einige Zeilen enthalten Zahlen innerhalb dieser Zeichendaten (obwohl sie nicht als numerischer Typ gespeichert sind).
Wir können die folgende Abfrage verwenden, um nur die Zeilen zurückzugeben, die Zahlen enthalten, die durch numerische Ziffern dargestellt werden:
SELECT ProductName
FROM Products
WHERE ProductName REGEXP '[0-9]+';
Ergebnis:
+-------------------------------------+ | ProductName | +-------------------------------------+ | Smash 2000 Sledgehammer | | Chainsaw (includes 3 spare fingers) | | Bottomless Coffee Mugs (4 Pack) | +-------------------------------------+
Wie erwartet werden nur die Zeilen zurückgegeben, die Zahlen enthalten.
In diesem Fall haben wir den REGEXP
verwendet -Funktion, um alle Zeilen zu finden, die einem Muster entsprechen. Das Muster umfasst alle Ziffern ab 0
bis 9
, plus jedes andere Zeichen.