Как перебрать и отфильтровать по переосмыслению БД в поле?

У меня есть это в моей БД:

{
    "id": "d40110a1-c0ca-47e0-95ca-086e905dd53c",
    "somefiled": [
        {
            "city_name": "Aadorf",
            "de": "Aadorf",
            "en": "Aadorf",
            "fr": "Aadorf",
            "it": "Aadorf",
            "kanton_de": "Thurgau",
            "kanton_en": "Thurgovie",
            "kanton_fr": "Thurgau",
            "kanton_it": "Turgovia"
        },
        {
            "city_name": "Aarau",
            "de": "Aarau",
            "en": "Aarau",
            "fr": "Aarau",
            "it": "Aarau",
            "kanton_de": "Aargau",
            "kanton_en": "Argovie",
            "kanton_fr": "Aargau",
            "kanton_it": "Argovia"
        }//many more records here]
}

Как я могу извлечь все элементы массива в somefiled где значение для kanton_en такое Арговия?

Что-то вроде этого:

r.db("test").table("table").getField("somefiled").filter(function(row){

  return row("kanton_en").eq("Argovie")
})

Но это, конечно, ничего не возвращает.

1 ответ

Решено с помощью:

r.db("test").table("test").getField("somefiled").concatMap(function(row){

  return row.filter(function(b){

    return b("kanton_en").eq("Argovie")
  })
})
Другие вопросы по тегам