Задать вопрос
bro-dev
@bro-dev

Как удалить дубликаты поля типа массив?

Как удалить дубликаты поля типа массив? за 1 запрос к базе.
есть документ
{
ar:[0,1,2,1,2,3,1,2,3,1,2,3,3,1,3,1,1,3,2,1,3,2,1,2,3,1,3,2]
}

Как сделать чтобы там остались только уникальные значения? Пока что сделано все через node то есть получает документ, обрабатывает и записывает, проблема в том что там этих записей больше миллиона из них уникальных треть. и за счет этих туда сюда жрется память и проц, хотелось бы чтобы за 1 запрос монга сама внутри сделала, возможно такое?
  • Вопрос задан
  • 152 просмотра
Подписаться 2 Простой Комментировать
Ответ пользователя Максим Тимофеев К ответам на вопрос (3)
webinar
@webinar
Учим yii: https://youtu.be/-WRMlGHLgRg
function onlyUnique(value, index, self) { 
    return self.indexOf(value) === index;
}

var a = [0,1,2,1,2,3,1,2,3,1,2,3,3,1,3,1,1,3,2,1,3,2,1,2,3,1,3,2];
var unique = a.filter( onlyUnique );
Ответ написан