MySQL - Zeilen abrufen, in denen ein Feldwert weniger als 5 Zeichen enthält

7

Ich muss alle Zeilen holen, in denen das Feld 'zip' weniger als 5 Zeichen enthält. Wie kann ich dies nur mit SQL erreichen? Ich googelte zuerst, aber fand nur Informationen über CHAR_LENGTH ().

dh psudeo-Code: SELECT * FROM Benutzer WHERE STRLEN (zip_code) & lt; 5

Danke!

    
John Himmelman 11.02.2010, 18:28
quelle

5 Antworten

18

Für MySQL würden Sie die Funktion LENGTH () verwenden, dh.

%Vor%

Weitere Informationen finden Sie in den Dokumentationen unter Ссылка .

    
wimvds 11.02.2010, 18:32
quelle
2

Sie können die Länge verwenden

%Vor%

Überprüfen Sie diese für weitere Informationen.

    
Daniel 11.02.2010 18:35
quelle
2

Wenn Sie nach schlechten Postleitzahlen suchen, dann char_length (zip_code) & lt; 5 ist ein Anfang, aber Es wird immer noch ungültige Postleitzahlen übergeben.

Verwenden Sie SELECT * von Benutzern, bei denen char_length (zip_code) & lt; 5 ODER zip_code NICHT REGEXP '^ ([0-9] {5}) $'

Der regexp-Teil sucht grundsätzlich nach zip_codes, wobei die ersten 5 Zeichen keine Zahlen zwischen 0-9 sind

Viel Spaß

    
user271573 12.02.2010 04:10
quelle
-1

Sie können

tun %Vor%     
Ayyappan Tamilvanan 29.09.2016 10:38
quelle

Tags und Links