Mongoexport: как выбрать из повторяющегося имени поля? - PullRequest
0 голосов
/ 28 мая 2020

Вот пример события с Google Диска, экспортированного с помощью Google API (экспортированного с помощью this ), а затем заполненного случайными данными для примера:

  {
    "kind": "admin#reports#activity",
    "id": {
      "time": "2019-04-29T17:45:28.410Z",
      "uniqueQualifier": "16573537485675045375441",
      "applicationName": "drive",
      "customerId": "C221dVy10nbrog"
    },
    "etag": "\"KNNMKfiwmeg94934t/wewwfwJ19jNKsf\"",
    "actor": {
      "email": "user2234@something.com",
      "profileId": "9491667471725735954639843"
    },
    "ipAddress": "639.057.333.59",
    "events": [
      {
        "type": "access",
        "name": "download",
        "parameters": [
          {
            "name": "primary_event",
            "boolValue": true
          },
          {
            "name": "billable",
            "boolValue": true
          },
          {
            "name": "doc_id",
            "value": "8BxFhGxdlCkb0KbUMflOv9QYWlaATQ"
          },
          {
            "name": "doc_type",
            "value": "jpeg"
          },
          {
            "name": "doc_title",
            "value": "Coil - Constant Shallowness Leads to Evil - Live in Moscow.JPG"
          },
          {
            "name": "visibility",
            "value": "shared_externally"
          },
          {
            "name": "originating_app_id",
            "value": "087638554939901"
          },
          {
            "name": "owner",
            "value": "anotheruser@something.com"
          },
          {
            "name": "owner_is_shared_drive",
            "boolValue": false
          },
          {
            "name": "owner_is_team_drive",
            "boolValue": false
          }
        ]
      }
    ]
  }
]

This JSON и многие другие импортируются в mon go db / collection. Теперь я хочу экспортировать некоторые поля в csv с помощью mongoexport .

Если я запустил:

$ mongoexport --host localhost --db dbName --collection collectionName --csv --out export.csv --fields id.time, субъект .email, ipAddress

Затем я получаю CSV с указанными полями. Мой вопрос связан с полями внутри параметров . Все они имеют одинаковое имя: имя , boolValue или значение .

Как экспортировать указанные c данные из поля параметров ? Например, как добавить значение третьего name в команду mongoexport bash? В этом случае, чтобы иметь столбец csv с заголовком документа.

PS: если вы знаете, как это сделать в оболочке mon go, укажите это, это может помочь для конечно. Спасибо!

...