首页 > 编程笔记 > MySQL笔记 阅读:2

Cypher RETURN、LIMIT和SKIP语句的用法(附带实例)

RETURN 语句的作用是返回节点、关系、属性、变量等信息。读者如果仅关注属性信息,则RETURN语句可以直接返回属性,不返回节点或关系。

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"                      │
如果仅需要返回属性,则可以直接返回属性,这样也可以会提高响应性能。

相关文章