SQLite
 sql >> Datenbank >  >> RDS >> SQLite

Zeilen zurückgeben, die alphanumerische Zeichen in SQLite enthalten

Hier ist ein Beispiel für die Rückgabe von Zeilen, die alphanumerische Zeichen in SQLite enthalten.

Alphanumerische Zeichen sind alphabetische Zeichen und numerische Zeichen.

Beispiel

Angenommen, wir haben eine Tabelle mit den folgenden Daten:

SELECT c1 FROM t1;

Ergebnis:

Music             
Live Music        
Café              
Café Del Mar      
100 Cafés         
[email protected] 
1 + 1             
()                
[email protected]#&()–[{}]:;',?/*
`~$^+=<>“         
$1.50             
Player 456        
007               
null              
                  
é                 
É                 
é 123             
ø                 
ø 123             

Wir können den REGEXP verwenden Operator mit einem regulären Ausdruck, um nur die Zeilen zurückzugeben, die nur alphanumerische Zeichen enthalten:

SELECT c1 FROM t1 
WHERE c1 REGEXP '^[A-Za-z0-9]+$';

Ergebnis:

Music
007  

In diesem Fall habe ich keine Unicode-Zeichen wie é eingefügt , É , oder ø in meinem Bereich, und daher werden alle Zeilen, die diese Zeichen enthalten, von der Ausgabe ausgeschlossen.

Sie müssen sicherstellen, dass Sie dabei die relevanten Zeichen abdecken.

Hier ist ein Beispiel für die Erweiterung des Bereichs um diese Zeichen:

SELECT c1 FROM t1 
WHERE c1 REGEXP '^[A-Za-zÀ-Þß-ÿ0-9]+$';

Ergebnis:

Music
Café 
007  
é    
É    
ø    

Das Leerzeichen ist nicht alphanumerisch. Um Zeilen zurückzugeben, die Leerzeichen enthalten, können wir daher unserem regulären Ausdruck ein Leerzeichen hinzufügen:

SELECT c1 FROM t1 
WHERE c1 REGEXP '^[A-Za-zÀ-Þß-ÿ0-9 ]+$';

Ergebnis:

Music       
Live Music  
Café        
Café Del Mar
100 Cafés   
Player 456  
007         
é           
É           
é 123       
ø           
ø 123      

Wir können den folgenden Code verwenden, um alle Zeilen einzuschließen, die enthalten Zeichen aus unserem Bereich (auch wenn sie auch Zeichen außerhalb dieses Bereichs enthalten):

SELECT c1 FROM t1
WHERE c1 REGEXP '[A-Za-zÀ-Þß-ÿ0-9]';

Ergebnis:

Music            
Live Music       
Café             
Café Del Mar     
100 Cafés        
[email protected]
1 + 1            
$1.50            
Player 456       
007              
é                
É                
é 123            
ø                
ø 123