sql >> Databáze >  >> RDS >> Mysql

Jak vybrat název domény z e-mailové adresy

Za předpokladu, že doména je jednoslovná doména jako gmail.com, yahoo.com, použijte

select (SUBSTRING_INDEX(SUBSTR(email, INSTR(email, '@') + 1),'.',1))

Vnitřní SUBSTR získá správnou část e-mailové adresy za @ a vnější SUBSTRING_INDEX přeruší výsledek v první třetině.

v opačném případě se očekává, že doména bude obsahovat více slov jako mail.yahoo.com , atd., použijte:

select (SUBSTR(email, INSTR(email, '@') + 1, LENGTH(email) - (INSTR(email, '@') + 1) - LENGTH(SUBSTRING_INDEX(email,'.',-1)))) 

LENGTH(email) - (INSTR(email, '@') + 1) - LENGTH(SUBSTRING_INDEX(email,'.',-1)) získá délku domény mínus TLD (.com, .biz etc. part) pomocí SUBSTRING_INDEX se záporným počtem, který se bude počítat zprava doleva.



  1. Jak funguje funkce SPACE() na serveru SQL Server (T-SQL)

  2. Může se mohutnost lišit pro duplicitní indexy v mysql?

  3. MYSQL Select Query s SUM()

  4. Jak vyřešit org.hibernate.QueryException:Ne všechny jmenované parametry byly nastaveny jako chyba?