我有這個表my_table
:如何計算日平均頻率?
recorder_id person_id day
A1 1 2017-06-03 12:30
A1 1 2017-06-03 12:45
B1 1 2017-06-03 12:50
A1 2 2017-06-03 16:40
B1 2 2017-06-03 16:45
B1 2 2017-06-03 18:20
A1 1 2017-06-04 11:22
我想知道每個人多少次經過平均每天每個記錄。例如,ID爲1的人平均每天經過記錄器A1 1.5次,而人2平均每天經過該記錄器0.5次(因爲該人沒有2017-06-04的記錄)。 B1應用相同的邏輯。
recorder_id person_id daily_average_per_person
A1 1 1.5
A1 2 0.5
B1 1 0.5
B1 2 1.0
我該如何得到這個結果?
我嘗試此查詢,但我不知道該怎麼每個獨特的人計算,平均每天:
SELECT recorder_id, person_id,
to_date(day) as hour,
count(*) as hourly_count
FROM my_table
GROUP BY recorder_id, person_id, to_date(day)
ORDER BY hourly_count;
Hive中沒有整數算術,所以不需要乘以1.0 –
@DuduMarkovitz。 。 。我傾向於默認這樣做,所以我不必記住哪個數據庫做了什麼。 –