sql >> Base de Datos >  >> RDS >> Mysql

analizar los resultados en MySQL a través de REGEX

MySQL no tiene una funcionalidad integrada para hacer lo que está pidiendo. Sería posible definiendo algunas funciones nuevas, pero probablemente sea más fácil hacerlo en cualquier lenguaje de programación a través del cual acceda a la base de datos.

Sin embargo, para algo tan simple como una dirección de correo electrónico, no debería necesitar usar expresiones regulares en absoluto, puede usar SUBSTRING_INDEX() función , como:

SELECT
    SUBSTRING_INDEX(email, '@', 1) AS Username,
    SUBSTRING_INDEX(SUBSTR(email, LOCATE('@', email)), '.', 1) AS Domain,
    SUBSTRING_INDEX(email, '.', -1) AS TLD
FROM users;

En palabras, eso es:

  • Nombre de usuario =todo antes de la primera '@'
  • Dominio =todo entre la primera '@' y la primera '.'
  • TLD =todo después del último '.'