MySQL Validate Email Records

TheBlackBenzKid picture TheBlackBenzKid · Dec 1, 2011 · Viewed 19.5k times · Source

I know you can use PHP Email Validate filters to check if the data is abc @ abc . ext

Is there anyway I can run a MySQL query to do this, check for only that style format. Otherwise I will have to make a pagination and load balanced limit script to select all records from the DB (50,000+) and the server is already slow for my client on shared hosting.

I just want to see a list of only valid emails and also can I check for duplicates or similarities with like query?

Appreciate any collab on this.

Answer

Oyeme picture Oyeme · Dec 1, 2011

Somethis like this

SELECT * FROM users WHERE email NOT REGEXP '^[^@]+@[^@]+\.[^@]{2,}$';

OR

SELECT * FROM users WHERE email NOT REGEXP '^[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$';

Update. It's just an example,how to use regular expression in Mysql.