sql >> Database >  >> RDS >> SQLite

Vind waarden die geen getallen bevatten in SQLite

Het volgende voorbeeld retourneert alle rijen die geen getallen bevatten in SQLite.

Met "getal" bedoel ik "numeriek cijfer". Getallen kunnen ook worden weergegeven door woorden en andere symbolen, maar voor het doel van dit artikel retourneren we waarden die geen numerieke cijfers bevatten.

Voorbeeldgegevens

Stel dat we een tabel hebben met de naam Products met de volgende gegevens in zijn ProductName kolom:

SELECT ProductName 
FROM Products;

Resultaat:

ProductName                         
------------------------------------
Widget Holder (holds 5 gram widgets)
Widget Opener                       
Bob's "Best" Widget                 
Blue Widget                         
Urban Dictionary Version 1.2        
Beer Water (375ml)                  

Voorbeeld zoekopdracht

We kunnen de volgende query gebruiken om alleen die rijen te retourneren die geen numerieke cijfers bevatten:

SELECT ProductName 
FROM Products
WHERE ProductName NOT REGEXP '[0-9]+';

Resultaat:

ProductName        
-------------------
Widget Opener      
Bob's "Best" Widget
Blue Widget        

Alleen de rijen die geen numerieke cijfers bevatten, worden geretourneerd.

In SQLite, de REGEXP operator is een speciale syntaxis voor de REGEXP() gebruikersfunctie.

Daarom kunnen we de volgende code gebruiken om hetzelfde resultaat te krijgen:

SELECT ProductName 
FROM Products
WHERE NOT REGEXP('[0-9]+', ProductName);

Resultaat:

ProductName        
-------------------
Widget Opener      
Bob's "Best" Widget
Blue Widget        

  1. Transacties afhandelen in MySQL

  2. DEFAULT-waarde invoegen in een kolom wanneer een parameter NULL is

  3. Top 9 databasebeheersystemen voor Joomla's sjablonen

  4. Spoolopdracht:voer geen SQL-instructie uit naar bestand