Формат даты в Hive: yyyy-MM-dd
, если вы хотите привести строку к дате , затем использовать
hive> select date(from_unixtime(unix_timestamp(`date`, 'MM/dd/yyyy hh:mm:ss a'),'yyyy-MM-dd')) `date`,count(*) from dd group by date(from_unixtime(unix_timestamp(`date`, 'MM/dd/yyyy hh:mm:ss a'),'yyyy-MM-dd'));
+-------------+------+--+
| date | _c1 |
+-------------+------+--+
| 1970-01-01 | 10 |
+-------------+------+--+
В этом утверждении мы выполнили приведение поля к дате тип данных даты и сгруппировали все даты.
(или)
, если вы просто хотитедля группировки по MM/dd/yyyy
затем используйте функцию split и группируйте по
hive> select split(`date`,' ')[0] `date`,count(*) from dd group by split(`date`,' ')[0];
+-----------+------+--+
| date | _c1 |
+-----------+------+--+
| 1/1/1970 | 10 |
+-----------+------+--+