que tal:
SELECT
person,
replace(replace(replace(replace(phone_number,' ',''),'(',''),')',''),'-','') as phone_number
FROM
people
WHERE
phone_number RLIKE '^[+]?[-() 0-9]+$';
coincide con números que comienzan con un signo más, pueden contener guiones, paréntesis y espacios. pero sin signos más que no sean al principio. y también sin personajes. también elimina guiones, espacios y paréntesis.