T-SQL: Identificare le email valide

In questo mini tutorial vi voglio illustrare come estrarre tramite T-SQL i valori presenti nel campo email solo se hanno una struttura sintatticamente corretta.
Premessa: L’idea di questo post è nata venerdì pomeriggio quando mi sono trovato a dovere scrivere una Stored Procedure per un micro servizio che sfruttava il campo email legato all’utente. Purtroppo come tutti sappiamo i dati forniti dagli utenti non sono sempre corretto ed una scrematura a monte non guasta mai.
LIKE Condition
Come posso capire se il valore presente nel campo (che chiamerò email_address per comodità ) è valido oppure no? Ho due possibilità fondamentalmente:
- Verificarne la sintassi per una prima scrematura
- Affidarmi a servizi dedicati per la verifica della mail per capire se esiste realmente oppure no. Ad esempio io utilizzo ZeroBounce per questa esigenza specifica.
Per evitare di passare dati sporchi a ZeroBounce e consumare inutilmente del credito ho deciso di inserire uno step precedente via T-SQL con lo scopo di escludere tutti i valori non corretti. Come? Ecco lo script (la parte minimale)
|
|
Come avrete notato l’ultima riga racchiude la condizione che stiamo cercando per escludere tutte le email non valide almeno dal punto di vista della sintassi:
email_address LIKE ‘%@%.__%'
Semplice, vero?