Se devi restituire tutte le righe che contengono almeno una cifra numerica in MySQL, il seguente esempio potrebbe tornare utile.
Esempio
Supponiamo di avere una tabella chiamata Products
con i seguenti dati nel suo ProductName
colonna:
SELECT ProductName
FROM Products;
Risultato:
+-------------------------------------+ | ProductName | +-------------------------------------+ | Left handed screwdriver | | Right handed screwdriver | | Long Weight (blue) | | Long Weight (green) | | Smash 2000 Sledge Hammer | | Chainsaw (Includes 5 spare fingers) | | Straw Dog Box | | Bottomless Coffee Mugs (4 Pack) | +-------------------------------------+
Questa colonna contiene dati carattere, ma alcune righe contengono numeri all'interno di tali dati carattere (anche se non sono archiviati come tipo numerico).
Possiamo utilizzare la seguente query per restituire solo quelle righe che contengono numeri rappresentati da cifre numeriche:
SELECT ProductName
FROM Products
WHERE ProductName REGEXP '[0-9]+';
Risultato:
+-------------------------------------+ | ProductName | +-------------------------------------+ | Smash 2000 Sledge Hammer | | Chainsaw (Includes 5 spare fingers) | | Bottomless Coffee Mugs (4 Pack) | +-------------------------------------+
Come previsto, vengono restituite solo le righe che contengono numeri.
In questo caso, abbiamo utilizzato REGEXP
di MySQL funzione per trovare tutte le righe che corrispondono a un modello. Il modello comprende tutte le cifre numeriche da 0
a 9
, più qualsiasi altro carattere.