Запрос встроенного списка в OrientDB

У меня есть документ в моей базе данных OrientDB (версии 1.0.1 )с примерно такой структурой:

{
    "timestamp": "...",
    "duration": 665,
    "testcases": [
        {
            "testName": "test01",
            "type": "ignore",
            "filename": "tests/test1.js"
        },
        {
            "iterations": 1,
            "runningTime": 45,
            "testName": "test02",
            "type": "pass",
            "filename": "tests/test1.js"
        },
       ...
        {
            "testName": "test05",
            "type": "ignore",
            "filename": "tests/test1.js"
        }
    ]
}

Как я могу запросить весь список, например. если я хочу найти все документы, содержащие тесткейс с типом «игнорировать»?

Я попытался выполнить следующий запрос

select from testresult where testcases['type'] = 'ignore'

но это приводит к NumberFormatException.

select from testresult where testcases[0]['type'] = 'ignore'

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

select from testresult where testcases contains(type = 'ignore')

Не дает никаких результатов, но запрос принимается как действительный.

Обновление: Следующий запрос работает по назначению, если наборы тестов хранятся как отдельные документы, а не как встроенный список.

select from testresult where testcases contains (type = 'ignore')
9
задан Henrik Aasted Sørensen 6 July 2012 в 12:01
поделиться