Ich entwickle eine Anwendung mit OrientDB als Datenbank. Die Datenbank ist bereits gefüllt, und jetzt muss ich einige Abfragen durchführen, um spezifische Informationen zu erhalten.OrientDB Graph Abfrage, die spezifische Beziehung
Ich habe 3 Klassen und 3 Kanten betroffen sein. Was ich tun muss, ist die Datenbank abzufragen, um festzustellen, ob eine bestimmte Beziehung besteht. Die Beziehung ist wie folgt:
ParlamentarVertex --Realiza> TransacaoVertex --FornecidaPor> EmpresaFornecedoraVertex AND ParlamentarVertex --SocioDe> EmpresaFornecedoraVertex
Die Namen mit einem Scheitelpunkt in ihr sind ein Scheitelpunkt natürlich sind und die Pfeile die Ränder zwischen den beiden Scheiteln.
Ich habe versucht, dies zu tun:
SELECT TxNomeParlamentar, SgPartido, SgUF FROM Parlamentar where ...
SELECT EXPAND(out('RealizaTransacao').out('FornecidaPor')) FROM Parlamentar
Aber ich weiß nicht, wie die Beziehungen nach der Where-Klausel angeben.
Ich habe auch Spiel
MATCH {class: Parlamentar, as: p} -Realiza-> {as:realiza}
zu verwenden versucht, aber ich bin nicht sicher, wie die Klausel und angeben, die für meine Frage wirklich wichtig ist.
Hat jemand einen Tipp, damit ich in die richtige Richtung gehen kann? Vielen Dank im Voraus!
EDIT 1
Ich habe es geschafft, unter die Abfrage zu verwenden:
SELECT EXPAND(out('RealizaTransacao').out('FornecidaPor').in('SocioDe')) FROM Parlamentar
Es funktioniert fast, aber einige Beziehungen falsch zurück. Es sieht wie ein Join aus, dass ich den Pk und FK nicht gebunden habe.
Vielen Dank für Ihre Antwort! Ich werde diese Lösung versuchen und zu dir zurückkommen. –
Es funktioniert, Vielen Dank! –