cypher学习2--语法
子句
Clauses - Cypher Manual (neo4j.com)
读取子句
这些子句包括从数据库读取数据的子句。
Cypher 查询中的数据流是具有键值对的无序映射串行,键值对是查询中的变量与从数据库派生的值之间的一组可能的绑定。此集合由查询的后续部分进行优化和扩充。
|
指定要在数据库中搜索的模式。 |
|
|
指定在数据库中搜索的模式,同时用于模式的缺失部分。 |
映射子句
这些子句定义要在结果集中返回的表达式。返回的表达式都可以使用 AS 进行别名化。
读取sub子句
作为读取子句的部分

编写子句

表达式学习
examples of allowed expressions in Cypher
常规
- 变量 n (字符串)
- 属性 n.property
- 动态属性 n[‘prop’] ,rel[n.a+n.b]
- 参数 $param
- 列表表达 [n, n.proper, n['p'], $para]
- 函数调用 length(p),nodes(p)
- 聚合函数 avg(x.prop) ,count(*)
- 路径模式
(a)-[r]->(b),(a)-[r]-(b),(a)--(b),(a)-->()<--(b). - 操作符 1+2 3<4
- 子查询表达式
COUNT {},COLLECT {},EXISTS {},CALL {}. - 正则表达式
a.name =~ 'Tim.*' - 条件表达式
- None
INTEGERFLOAT INTEGER0x INTEGER0o
STRING
布尔BOOLEANtruefalse
条件表达式
简单CASE
语法
CASE test WHEN value [, value]* THEN result [WHEN ...] [ELSE default] END
| 名字 | 描述 |
|---|---|
|
|
一个表达式。 |
|
|
一个表达式,其结果将与 进行比较。 |
|
|
如果匹配,则作为输出返回的表达式 |
|
|
如果没有与测试表达式匹配的值,则要返回的表达式。 |

通用CASE
CASE WHEN predicate THEN result [WHEN ...] [ELSE default] END
|
|
谓词是计算结果为值的表达式。 在这种情况下,将测试谓词以找到有效的替代方法。 |

CASE表达式和后续子句
表达式的结果可用于设置节点或关系的属性。



浙公网安备 33010602011771号