Apigee Cassandra, как запросить свойство с массивом объектов?

Предположим, это мои данные:

{
    "info": [
       {
            "name": "Dr. DRE"
       }
    ]
}

Как запросить в Cassandra все строки, в которых в качестве имени указано "Dr. DRE"?

select * where ..?

Я понятия не имею, и не нашел ничего полезного в Google...

2 ответа

Решение

Поскольку мы пояснили, что вы используете usergrid, а не собственный экземпляр Cassandra, это должно работать для вас:

where info.name='Dr. DRE'

(Обратите внимание, что в Usergrid 1.0, select * подразумевается, но вы можете включить его, если хотите)

Хотя использование = в этом случае может показаться немного странным, вы можете использовать это для поиска значений в массиве.

В Cassandra 2.1 и более поздних версиях вы можете индексировать коллекцию и запрашивать коллекцию, используя содержимое в предложении where. Узнайте больше здесь и здесь

Другие вопросы по тегам