SQLite
 sql >> Database >  >> RDS >> SQLite

Restituisce righe che contengono caratteri alfanumerici in SQLite

Ecco un esempio di restituzione di righe che contengono caratteri alfanumerici in SQLite.

I caratteri alfanumerici sono caratteri alfabetici e caratteri numerici.

Esempio

Supponiamo di avere una tabella con i seguenti dati:

SELECT c1 FROM t1;

Risultato:

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

Possiamo usare il REGEXP operatore con un'espressione regolare per restituire solo quelle righe che contengono solo caratteri alfanumerici:

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

Risultato:

Music
007  

In questo caso, non ho incluso caratteri Unicode come é , É o ø nel mio intervallo, quindi tutte le righe che contengono quei caratteri sono escluse dall'output.

Dovrai assicurarti di aver coperto i personaggi pertinenti durante questa operazione.

Ecco un esempio di espansione dell'intervallo per includere quei caratteri:

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

Risultato:

Music
Café 
007  
é    
É    
ø    

Il carattere spazio non è alfanumerico. Pertanto, per restituire righe che includono spazi, possiamo aggiungere uno spazio alla nostra espressione regolare:

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

Risultato:

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

Possiamo usare il codice seguente per includere tutte le righe che contengono caratteri del nostro intervallo (anche se contengono anche caratteri al di fuori di questo intervallo):

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

Risultato:

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