pagina oficial neo4j cypher

oficial - database neo4j



¿Cómo devolver el tipo de relación con las consultas de Cypher de Neo4J? (1)

Estoy tratando de obtener el tipo de relación de una consulta Cypher muy simple, como la siguiente

MATCH (n)-[r]-(m) RETURN n, r, m;

Desafortunadamente esto devuelve un objeto vacío para r . Esto es problemático ya que no puedo distinguir entre los diferentes tipos de relaciones. Puedo parchear esto agregando una propiedad como [r:KNOWS {type:''KNOWS''}] pero me pregunto si no hay una forma directa de obtener el tipo de relación.

Incluso seguí el tutorial oficial de Neo4J (como se describe a continuación), demostrando el problema.

Configuración de gráfico :

create (_0 {`age`:55, `happy`:"Yes!", `name`:"A"}) create (_1 {`name`:"B"}) create _0-[:`KNOWS`]->_1 create _0-[:`BLOCKS`]->_1

Consulta :

MATCH p=(a { name: "A" })-[r]->(b) RETURN *

JSON RESPONSE BODY :

{ "results": [ { "columns": [ "a", "b", "p", "r" ], "data": [ { "row": [ { "name": "A", "age": 55, "happy": "Yes!" }, { "name": "B" }, [ { "name": "A", "age": 55, "happy": "Yes!" }, {}, { "name": "B" } ], {} ] }, { "row": [ { "name": "A", "age": 55, "happy": "Yes!" }, { "name": "B" }, [ { "name": "A", "age": 55, "happy": "Yes!" }, {}, { "name": "B" } ], {} ] } ] } ], "errors": [] }

Como puede ver, obtengo un objeto vacío para r , lo que hace que sea imposible distinguir entre las relaciones.

NOTA : Estoy ejecutando Neo4J v.2.2.2


Utilice la función type() .

MATCH (n)-[r]-(m) RETURN type(r);