Задать вопрос
iamsaint
@iamsaint

Группировка в MongoDB

Добрый день.
Есть коллекция вида:
{ "_id" : ObjectId("50d2aed37f1515b621000001"), "user_id" : "274",  "timestamp" : 1355984595 }
{ "_id" : ObjectId("50d2cd047f1515b414000001"), "user_id" : "450",  "timestamp" : 1355992324 }
{ "_id" : ObjectId("50d2ed4c7f1515d308000001"), "user_id" : "450",  "timestamp" : 1356000588 }

В php делаю выборку с группировкой по user_id вот твким образом:
        $connection = new Mongo();
        $db = $connection->test;
        $collection = $db->click;

        $res = $collection->group(
            array(
                'user_id'=>true
            )
            ,array('count' => 0)
            ,'function (obj, prev) {
                ++prev.count;
            }'
            ,array()
        );

Как можно добавить условие группировки по полю timestamp, чтобы в результате поле timestamp был в формате dd.mm.yyyy?
  • Вопрос задан
  • 5373 просмотра
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
1. Почему храниться timestamp а не Date?
2. Конвертация timestamp в Date:

new Date(timestamp)
Ответ написан
Комментировать
@PaulOkopny
Вообще, базовая рекомендация по работе с mongo(если я правильно помню, она исходит от самих разработчиков): хранить данные в том виде, в котором их планируете представлять. Поэтому:
1. Добавить поле с датой в нужном формате.
2. Сгруппировать по нему вручную или силами Aggregation Framework.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽