Cypher RETURN、LIMIT和SKIP语句的用法(附带实例)
RETURN 语句的作用是返回节点、关系、属性、变量等信息。读者如果仅关注属性信息,则RETURN语句可以直接返回属性,不返回节点或关系。
LIMIT 语句和 SKIP 语句的作用是过滤或限制查询返回的行数,其中,LIMIT 语句的作用是返回前几行,SKIP 语句的作用是跳过前几行。
返回关系类别为 ACTED_IN 的 role 属性值,代码如下:
LIMIT 语句和 SKIP 语句的作用是过滤或限制查询返回的行数,其中,LIMIT 语句的作用是返回前几行,SKIP 语句的作用是跳过前几行。
Cypher返回节点
1) 返回匹配条件的全部节点
返回节点标签为 Person 的全部节点,代码如下:MATCH (n:Person) RETURN n返回值如下,一共返回了 5 个节点:
│"n" │ │{"name":"Oliver Stone"} │ │{"name":"Michael Douglas"} │ │{"name":"Charlie Sheen"} │ │{"name":"Martin Sheen"} │ │{"name":"Rob Reiner"} │
2) 返回匹配条件的前 2 个节点
返回节点标签为 Person 的前 2 个节点,代码如下:MATCH (n:Person) RETURN n LIMIT 2返回值如下,一共返回了 2 个节点:
│"n" │ │{"name":"Oliver Stone"} │ │{"name":"Michael Douglas"} │
3) 返回匹配条件的第 3 个及其之后的节点
返回节点标签为 Person 的第 3 个及其之后的节点,代码如下:MATCH (n:Person) RETURN n SKIP 2返回值如下,一共返回了 3 个节点:
│"n" │ │{"name":"Charlie Sheen"} │ │{"name":"Martin Sheen"} │ │{"name":"Rob Reiner"} │
Cypher返回关系
1) 返回全部关系
返回关系类别为 ACTED_IN 的全部关系,代码如下:MATCH ()-[r:ACTED_IN]->() RETURN r返回值为:
│"r" │ │{"role":"President Andrew Shepherd"}│ │{"role":"Gordon Gekko"} │ │{"role":"Bud Fox"} │ │{"role":"A.J.MacInerney"} │ │{"role":"Carl Fox"} │
2) 匹配关系,并返回指定位置的关系
匹配关系类别为 ACTED_IN 的全部关系,并返回第 3 个和第 4 个关系,代码如下:MATCH () - [r:ACTED_IN] -> () RETURN r SKIP 2 LIMIT 2返回值如下:
│"r" │ │{"role":"Bud Fox"} │ │{"role":"A.J.MacInerney"} │可以看出,代码先跳过前 2 个关系,再返回第 3 个和第 4 个关系。
Cypher返回属性
RETURN 语句既可以返回节点属性,也可以返回关系属性。这两种用途的使用方法一致,这里仅演示返回关系属性的使用方法。返回关系类别为 ACTED_IN 的 role 属性值,代码如下:
MATCH () - [r:ACTED_IN] -> () RETURN r.role LIMIT 2返回值如下:
│"r.role" │ │"President Andrew Shepherd" │ │"Gordon Gekko" │如果仅需要返回属性,则可以直接返回属性,这样也可以会提高响应性能。