Проверьте количество повторяющихся цифр или символов в столбце Hive - PullRequest
0 голосов
/ 16 ноября 2018

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

eg-Example column

Вывод должен быть 6.

Я пытался использовать обратную функцию улья, но он также дает числа палиндрома. Пример кода, который я пробовал -

select sum(case when Number = reverse(Number) then 1 else 0 end) as counts
from table
where Number is not null

Ответы [ 2 ]

0 голосов
/ 18 ноября 2018
select count(distinct Number) as dist_numbers
from table
where trim(number) rlike ^0+$|^1+$|^2+$|^3+$|^4+$|^5+$|^6+$|^7+$|^8+$|^9+$;

Это временный, но громоздкий подход.

0 голосов
/ 16 ноября 2018

Вы, кажется, хотите знать, все ли цифры появляются кратно 2 раз.

Один довольно болезненный метод:

select t.*
from t
where ( length(number) - length(replace(number, '0', '')) ) % 2 = 0 and
      ( length(number) - length(replace(number, '1', '')) ) % 2 = 0 and
      . . .
      ( length(number) - length(replace(number, '9', '')) ) % 2 = 0
...