sql >> Database teknologi >  >> RDS >> Mysql

parse resultater i MySQL via REGEX

MySQL har ikke indbygget funktionalitet til at gøre det, du beder om. Det ville være muligt ved at definere nogle nye funktioner, men det er nok nemmere bare at gøre det på det programmeringssprog, du tilgår databasen gennem.

For noget så simpelt som en e-mailadresse skulle du dog slet ikke behøve at bruge regulære udtryk, du kan bruge SUBSTRING_INDEX() funktion , som:

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

Med ord, det er:

  • Brugernavn =alt før det første '@'
  • Domæne =alt mellem det første '@' og det første '.'
  • TLD =alt efter den sidste '.'


  1. Opdater kolonne i database, hvor max værdi php mysql

  2. Sikkerhedsundtagelse ved hjælp af MySQL og Entity Framework på godaddy

  3. Sådan fungerer Access 2019, og hvordan du arbejder med det

  4. Her er tre grunde til, at du kan se topaktivitet i din SQL-instans