MariaDB
 sql >> Datenbank >  >> RDS >> MariaDB

So erhalten Sie Werte, die keine Zahlen in MariaDB enthalten

Wenn Sie mit MariaDB arbeiten, müssen Sie möglicherweise gelegentlich alle Zeilen zurückgeben, die keine Zahlen enthalten.

Technisch gesehen können Zahlen durch Wörter und andere Symbole dargestellt werden, aber für diesen Artikel bedeutet „Zahl“ einfach „Ziffer“. Wir finden also Werte, die keine Ziffern enthalten.

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 keine numerischen Ziffern enthalten:

SELECT ProductName 
FROM Products
WHERE ProductName NOT REGEXP '[0-9]+';

Ergebnis:

+--------------------------+
| ProductName              |
+--------------------------+
| Left Handed Screwdriver  |
| Right Handed Screwdriver |
| Bottomless Coffee Cup    |
+--------------------------+

Wie erwartet werden nur die Zeilen zurückgegeben, die keine Zahlen enthalten.

In diesem Fall haben wir den NOT REGEX verwendet -Funktion, um alle Zeilen zu finden, die einem Muster entsprechen. Das Muster umfasst alle Ziffern ab 0 bis 9 , plus jedes andere Zeichen.

Dies könnte auch so geschrieben werden:

SELECT ProductName 
FROM Products
WHERE NOT (ProductName REGEXP '[0-9]+');

Ergebnis:

+--------------------------+
| ProductName              |
+--------------------------+
| Left Handed Screwdriver  |
| Right Handed Screwdriver |
| Bottomless Coffee Cup    |
+--------------------------+

Gleiche Ausgabe.