Her er et eksempel på returnerende rækker, der kun indeholder ikke-alfanumeriske tegn i SQLite.
Ikke-alfanumeriske tegn inkluderer tegnsætningstegn såsom example@sqldat.com#&()–[{}]:;',?/* og symboler som `~$^+=<>“ , såvel som mellemrumstegn som mellemrum eller tabulatortegn.
Eksempeldata
Vi bruger følgende data til vores eksempler:
SELECT c1 FROM t1; Resultat:
+----------------------+
| c1 |
+----------------------+
| Music |
| Live Music |
| Café |
| Café Del Mar |
| 100 Cafés |
| example@sqldat.com |
| 1 + 1 |
| () |
| example@sqldat.com#&()–[{}]:;',?/* |
| `~$^+=<>“ |
| $1.50 |
| Player 456 |
| 007 |
| NULL |
| |
| é |
| É |
| é 123 |
| ø |
| ø 123 |
+----------------------+
Vi kan bruge REGEXP operator med et regulært udtryk for at returnere de rækker, der kun indeholder ikke-alfanumeriske tegn:
SELECT c1 FROM t1
WHERE c1 NOT REGEXP '[A-Za-z0-9]'; Resultat:
+----------------------+
| c1 |
+----------------------+
| () |
| example@sqldat.com#&()–[{}]:;',?/* |
| `~$^+=<>“ |
| |
| é |
| É |
| ø |
+----------------------+
I dette tilfælde dækkede mit ekskluderingsområde ikke alfanumeriske tegn som é , É og ø . Følgende eksempel udvider området for at udelukke disse tegn fra resultatet:
SELECT c1 FROM t1
WHERE c1 NOT REGEXP '[A-Za-zÀ-Þß-ÿ0-9]'; Resultat:
()
example@sqldat.com#&()–[{}]:;',?/*
`~$^+=<>“
Vores tabel indeholder også en række med den tomme streng. Dette er et ikke-alfanumerisk tegn, og det returneres derfor i ovenstående resultat. Vi kan også bruge NULLIF() funktion til at udelukke den tomme streng fra outputtet:
SELECT c1 FROM t1
WHERE NULLIF(c1, '') NOT REGEXP '[A-Za-zÀ-Þß-ÿ0-9]'; Resultat:
()
example@sqldat.com#&()–[{}]:;',?/*
`~$^+=<>“