Как получить размер (в байтах) полей документов в mongodb - PullRequest
1 голос
/ 07 марта 2020

У меня есть коллекция документов (products_entity).

ID | TYPE | CONTENT_DATA

Я могу запросить db.getCollection('products_entity').find({type: "comment"}), чтобы получить мои документы по type.

Я хотел бы изменить размер из всех CONTENT_DATA полей, возвращенных из моего запроса db.getCollection('products_entity').find({type: "comment"}).

Это возможно и как я могу это сделать?

Или я должен создать один дополнительный столбец с именем size, заполните его создать / обновить и получить сумму этих полей?

Спасибо!

1 Ответ

0 голосов
/ 07 марта 2020

Вы можете использовать $ strLenBytes или $ strLenCP

db.products_entity.aggregate([
  {
    $addFields: {
      size: {
        $strLenBytes: "$CONTENT_DATA"
      }
    }
  }
])

MongoPlayground

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...