In MySQL können Sie den REGEXP-Operator verwenden, um zu bestimmen, ob die Daten ein numerischer Typ sind. Die Syntax lautet „String REGEXP '[^0-9.]‘“; dieser Operator ist die Abkürzung für regulären Ausdruck Zeichen enthalten Zahlen. Wenn das zurückgegebene Ergebnis wahr ist, andernfalls ist das zurückgegebene Ergebnis falsch.
Die Betriebsumgebung dieses Tutorials: Windows10-System, MySQL8.0.22-Version, Dell G3-Computer.
{String} REGEXP '[^0-9.]'
Die vorherige Zeichenfolge ist das, was wir beurteilen müssen, und die folgende Zeichenfolge ist der reguläre Ausdruck von MySQL, was bedeutet, dass Zeichen übereinstimmen, die keine Zahlen oder Dezimalstellen sind.
Wenn der String eine Zahl enthält, die nicht zwischen 0 und 9 oder einem Dezimalpunkt liegt, wird „true“ zurückgegeben, andernfalls wird „false“ zurückgegeben.
Verwendung
select ('123a' REGEXP '[^0-9.]');
--'123a' enthält das Zeichen 'a'. Das Ausgabeergebnis der Konstante true in MySQL ist 1. Die Ausgabe von false ist 0
select * from tablename where (name REGEXP '[^0-9.]') = 1
Fragen Sie die Datensätze ab, deren Name nur aus Zahlen besteht.
Hinweis : Wenn in der Zeichenfolge Leerzeichen vorhanden sind, wird der reguläre Ausdruck abgeglichen und 1 zurückgegeben. Wenn Sie die Leerzeichen an beiden Enden entfernen möchten, müssen Sie die Funktion trim() für die zu beurteilende Zeichenfolge verwenden.
#Fragen Sie die Daten ab, deren Geschwindigkeitsspalte keine Zahl ist
select * from standard_csbi_service_tree_1d_full where (‘2134’ REGEXP ‘[^0-9.]’)=1;
#Fragen Sie die Daten ab, deren Geschwindigkeitsspalte eine Zahl ist
select * from standard_csbi_service_tree_1d_full where (speed REGEXP ‘[^0-9.]’)=0;
Empfohlenes Lernen:
MySQL-Video-TutorialDas obige ist der detaillierte Inhalt vonSo ermitteln Sie, ob MySQL ein numerischer Typ ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!