Как я могу использовать запрос на выборку в SQL, чтобы найти список адресов электронной почты, которые содержат только 6 случайных чисел? - PullRequest
1 голос
/ 26 июня 2019

В настоящее время я ищу способ использовать запрос SQL, чтобы найти список всех адресов электронной почты в нашей БД, содержащий только 6 случайных чисел, а затем "@ gmail.com".

Пример:

email

----------

123456@gmail.com
324522@gmail.com

Вот что я попробовал:

select email 
from customers
where email Not like '%^[0-9]%'

Когда я запускаю это, появляются все электронные письма, даже те, в которых нет цифр.

select email,
SPLIT_PART(email, '@',1) as username, 
SPLIT_PART(email, '@',2) as domain,
(case when username not like '%^[0-9]%' then 'Incorrect' else 'Correct' End) as format
from customers
where domain = 'gmail.com'
and format = 'Correct' 

Я тоже это пробовал, для всех писем, даже если в них были цифры, они выглядели как Неправильные.

Кажется, что числа в столбцах не распознаются, и я не уверен, как это исправить. Формат столбца Varchar

1 Ответ

2 голосов
/ 26 июня 2019

Я говорил с Mode Analytics, и оказалось, что моя БД - Redshift. Вот как я смог получить эту работу:

select email
from customers
where email similar to '[0-9]{6}@gmail.com'

Спасибо всем за помощь!

...