Как получить только _id документов по фильтру mongodb?

Для получения только _id документов по фильтру в MongoDB, вы можете использовать функцию find() вместе с методом projection().

Операция find() позволяет вам указать фильтр для поиска, а метод projection() позволяет указать, какие поля должны быть возвращены в результате запроса. Чтобы получить только _id документов, вы можете использовать проекцию, которая включает только это поле.

Пример кода на JavaScript:

// Подключение к MongoDB
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017/mydatabase';

MongoClient.connect(url, function(err, client) {
  if (err) throw err;

  const db = client.db('mydatabase');
  const collection = db.collection('mycollection');

  // Определение фильтра
  const filter = { field: 'value' };

  // Определение проекции
  const projection = { _id: 1 };

  // Поиск документов с фильтром и проекцией
  collection.find(filter).project(projection).toArray(function(err, docs) {
    if (err) throw err;

    // Обработка результатов
    console.log(docs);

    client.close();
  });
});

В этом примере вы можете заменить 'mongodb://localhost:27017/mydatabase' на адрес вашего сервера MongoDB и базы данных, а 'mycollection' на имя вашей коллекции. filter должен содержать ваш фильтр в формате { поле: значение }, где поле это имя поля, а значение значение, по которому вы хотите отфильтровать документы.

Результат будет содержать только поле _id всех документов, соответствующих вашему фильтру.