java mongodb distinct

266
16 марта 2017, 20:46

1) Прямой запрос к БД выглядит так:

db.getCollection('collection').distinct("body.uniq_value_id");

- получим все уникальные значения uniq_value_id.

2) Непосредственно на Java есть такая реализация:

            List uniqlist = collection.distinct("body.uniq_value_id"); 
            for (int i = 0; i < uniqlist.size(); i++) {
                System.out.println(varTextB.get(i));
            }

- тут получим ТОЖЕ все уникальные значения uniq_value_id В КОНСОЛЬ.

3) Дальше есть запрос в формате:

db.tracking.distinct("body.uniq_value_name", {"body.uniq_value_id":"some_id1"});
  • этот запрос в свою очередь отобразит все уникальные значения body.uniq_value_name для записей где body.uniq_value_id будет иметь значение some_id1.

Вопрос - как использовать в Java подобные запросы? Вопрос актуальный так как синтаксис запросов может быть структурно сложным, например:

db.collection.find({"body.uniq_value_name":"some_name1","body.uniq_other":{$in:[/active.*=.*yes/i]}}).pretty();
READ ALSO
Внешняя БД и android-приложение

Внешняя БД и android-приложение

Как сделать внешнюю БД (которая будет висеть где-то на хостинге) и сделать возможность записывать/читать информацию с нее в android-приложенииЕсли...

388
Отправка письма в отдельном потоке Java EE Servlet

Отправка письма в отдельном потоке Java EE Servlet

Сделал отправку письма на E-MailОтправка сделана через Gmail, с авторизацией

370