Ervan uitgaande dat het domein een domein met één woord is, zoals gmail.com, yahoo.com, gebruik dan
select (SUBSTRING_INDEX(SUBSTR(email, INSTR(email, '@') + 1),'.',1))
De innerlijke SUBSTR
krijgt het juiste deel van het e-mailadres na @
en de buitenste SUBSTRING_INDEX
zal het resultaat in de eerste periode afsnijden.
anders als het domein naar verwachting meerdere woorden zal bevatten, zoals mail.yahoo.com
, enz., gebruik:
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))
krijgt de lengte van het domein minus het TLD (.com, .biz etc. part)
door SUBSTRING_INDEX
. te gebruiken met een negatieve telling die van rechts naar links wordt berekend.