Cuando trabaje con MariaDB, es posible que ocasionalmente necesite devolver todas las filas que contienen al menos un dígito numérico.
En tales casos, puede encontrar útil el siguiente ejemplo.
Ejemplo
Supongamos que tenemos una tabla llamada Products
con los siguientes datos en su ProductName
columna:
SELECT ProductName
FROM Products;
Resultado:
+-------------------------------------+ | ProductName | +-------------------------------------+ | Left Handed Screwdriver | | Right Handed Screwdriver | | Bottomless Coffee Cup | | Smash 2000 Sledgehammer | | Chainsaw (includes 3 spare fingers) | | Bottomless Coffee Mugs (4 Pack) | +-------------------------------------+
Esta columna obviamente contiene datos de caracteres, pero algunas filas contienen números dentro de esos datos de caracteres (aunque no se almacenan como un tipo numérico).
Podemos usar la siguiente consulta para devolver solo aquellas filas que contienen números representados por dígitos numéricos:
SELECT ProductName
FROM Products
WHERE ProductName REGEXP '[0-9]+';
Resultado:
+-------------------------------------+ | ProductName | +-------------------------------------+ | Smash 2000 Sledgehammer | | Chainsaw (includes 3 spare fingers) | | Bottomless Coffee Mugs (4 Pack) | +-------------------------------------+
Como era de esperar, solo se devuelven las filas que contienen números.
En este caso, usamos el REGEXP
función para encontrar todas las filas que coincidieron con un patrón. El patrón abarca todos los dígitos numéricos desde 0
a 9
, además de cualquier otro carácter.