나는 words
컬렉션 하나와 word_relations
에지 컬렉션 하나를 가지고 있습니다. 단어 등 동의어, hasPart, 공범자, hasType, 대해서 typeof, 나는 모든 있도록하는 방법을 FILTER
AQL 그래프 쿼리를 알아 내려고 노력하고 있어요일치하는 가장자리 속성에 대한 ArangoDB AQL FILTER 그래프
을 같은 다른 단어 관계를 가지고 경로는 따라 오지만 두 개 이상의 모서리가있는 경로는 relation_type
이라는 동일한 모서리 속성을 포함합니다.
[
{
"edges": [
{
"_from": "library/parent",
"_to": "library/organism",
"relation_type": "typeOf"
}
],
"vertices": [
{
"_key": "parent",
"word": "parent"
},
{
"_key": "organism",
"word": "organism"
}
]
},
{
"edges": [
{
"_from": "library/parent",
"_to": "library/organism",
"relation_type": "typeOf"
},
{
"_from": "library/organism",
"_to": "library/scheme",
"relation_type": "typeOf"
}
],
"vertices": [
{
"_key": "parent",
"word": "parent"
},
{
"_key": "organism",
"word": "organism"
},
{
"_key": "scheme",
"word": "scheme"
}
]
},
{
"edges": [
{
"_from": "library/parent",
"_to": "library/stepparent",
"relation_type": "hasType"
},
{
"_from": "library/stepparent",
"_to": "library/stepmother",
"relation_type": "hasType"
}
],
"vertices": [
{
"_key": "parent",
"word": "parent"
},
{
"_key": "stepparent",
"word": "stepparent"
},
{
"_key": "stepmother",
"word": "stepmother"
}
]
}
]
NOT이 결과 (하나 개의 경로 내에서 relation_type
속성 값 변경) :
예, 나는이 결과를 (모든 반환 경로, 하나 또는 여러 여부, 단일 relation_type
속성 값을 포함) 할
[
{
"edges": [
{
"_from": "library/parent",
"_to": "library/organism",
"relation_type": "typeOf"
}
],
"vertices": [
{
"_key": "parent",
"word": "parent"
},
{
"_key": "organism",
"word": "organism"
}
]
},
{
"edges": [
{
"_from": "library/parent",
"_to": "library/organism",
"relation_type": "typeOf"
},
{
"_from": "library/organism",
"_to": "library/zygote",
"relation_type": "hasCategories"
}
],
"vertices": [
{
"_key": "parent",
"word": "parent"
},
{
"_key": "organism",
"word": "organism"
},
{
"_key": "zygote",
"word": "zygote"
}
]
},
{
"edges": [
{
"_from": "library/parent",
"_to": "library/family_unit",
"relation_type": "memberOf"
},
{
"_from": "library/family_unit",
"_to": "library/sibling",
"relation_type": "hasMembers"
}
],
"vertices": [
{
"_key": "parent",
"word": "parent"
},
{
"_key": "family_unit",
"word": "family unit"
},
{
"_key": "sibling",
"word": "sibling"
}
]
},
]
relation_type
속성 값에는 여러 가지 종류가 있습니다. 특정 값으로 필터링하고 싶지 않습니다. 초기 값이 무엇이든 상관 없습니다. 모든 후속 속성 값을 첫 번째 값과 동일하게 지정하고 싶습니다. 같은
AQL 두 번째 (바람직하지 않은) 결과를 얻기 보인다 :
0 결과 :
FOR v, e, p IN 1..2 OUTBOUND 'library/parent' library_relations
FILTER p.edges[*].relation_type ALL == p.edges[*].relation_type
RETURN p
내가 몇 가지 다른 필터를 시도
FOR v, e, p IN 1..2 OUTBOUND 'words/parent' word_relations
RETURN p
어느 것도 작품의
2 경로 만 반환합니다. FILTER
은 초를 필요로합니다.
FOR v, e, p IN 1..2 OUTBOUND 'library/parent' library_relations
FILTER p.edges[0].relation_type == p.edges[1].relation_type
RETURN p
도움 주셔서 감사합니다.
아름다운 것, 완벽하게 작동합니다. 감사! – tgig