2016-06-24 5 views
1

У меня есть таблица, которая похожа на следующее:HiveQL - Запрос Количество записей в течение фиксированной единицы времени

LOGIN ID (STRING):  TIME_STAMP (STRING HH:MM:SS) 
BillyJoel    10:45:00 
PianoMan    10:45:30 
WeDidnt     10:45:45 
StartTheFire   10:46:00 
AlwaysBurning   10:46:30 

Есть ли возможный способ получить запрос, который дает мне столбец числа логины в течение определенного периода времени? Что-то вроде этого:

3 (number of logins from 10:45:00 - 10:45:59) 
2 (number of logins from 10:46:00 - 10:46:59) 

Примечание: Если вы можете сделать это только с помощью временных меток времени, все в порядке. Моя оригинальная таблица - это все строки, поэтому я подумал, что буду представлять это здесь. Материал в скобках не должен быть напечатан

ответ

1

Если вы хотите его минуты, вы можете просто отсечь секунды:

select substr(1, 5, time_stamp) as hhmm, count(*) 
from t 
group by hhmm 
order by hhmm; 
+0

Спасибо, но что, если я хочу неправославное измерение, как 2 минуты или полминуты? – knowads

+0

@ knowads. , , Затем задайте другой вопрос. Это не так легко решить. –