#postgresql
#postgresql
Вопрос:
Telephone_number
111111111
1111143452
000000000
888888888
5554038291
1111392012
9999999999
2324666666
Итак, исходя из вышесказанного, я хочу, чтобы только те записи, в которых одна и та же цифра повторялась более 5 раз.
Количество выходных данных должно быть 5.
Ответ №1:
Вы можете использовать регулярное выражение с повторяющейся обратной ссылкой.
with test (telephone_number) as
( values ('111111111')
, ('1111143452')
, ('000000000')
, ('888888888')
, ('5554038291')
, ('1111392012')
, ('9999999999')
, ('2324666666')
)
select telephone_number
from test
where telephone_number ~ '(d)1{5,}';
Это зависит от того, как определены столбцы, как числовые или как текстовые. Если числовое определение, то вам нужно поиграть с преобразованием в текст для использования регулярного выражения. См. fiddle .