e quanto a:
SELECT
person,
replace(replace(replace(replace(phone_number,' ',''),'(',''),')',''),'-','') as phone_number
FROM
people
WHERE
phone_number RLIKE '^[+]?[-() 0-9]+$';
corresponde a números que começam com um sinal de mais, eles podem conter hífens, parênteses e espaços. mas nenhum sinal de adição além do início. e também sem caracteres. também remove hífens, espaços e parênteses.