扫码一下
查看教程更方便
cql(cypher query language) 代表查询语言。 就像 oracle 数据库有查询语言 sql,neo4j 有 cql 作为查询语言。
以下是 neo4j cypher query language的读取子句
序号 | 写入子句 | 使用 |
---|---|---|
1 | match | 该子句用于搜索具有指定模式的数据。 |
2 | optional match | 这与 match 相同,唯一的区别是它可以在缺少模式部分的情况下使用 null。 |
3 | where | 此子句 id 用于向 cql 查询添加内容。 |
4 | start | 该子句用于通过遗留索引查找起点。 |
5 | load csv | 该子句用于从 csv 文件导入数据。 |
以下是 neo4j cypher query language的写入子句
序号 | 读取子句 | 使用 |
---|---|---|
1 | create | 该子句用于创建节点、关系和属性。 |
2 | merge | 该子句验证图形中是否存在指定的模式。 如果没有,它会创建模式。 |
3 | set | 该子句用于更新节点上的标签、节点上的属性和关系。 |
4 | delete | 该子句用于从图中删除节点和关系或路径等。 |
5 | remove | 此子句用于从节点和关系中删除属性和元素。 |
6 | foreach | 此类用于更新列表中的数据。 |
7 | create unique | 使用子句 create 和 match,可以通过匹配现有模式并创建缺少的模式来获得唯一模式。 |
8 | 使用 cypher 导入 csv 文件 | 使用加载 csv,我们可以从 .csv 文件导入数据。 |
以下是 neo4j cypher query language的一般子句
序号 | 一般子句 | 使用 |
---|---|---|
1 | return | 此子句用于定义要包含在查询结果集中的内容。 |
2 | order by | 此子句用于按顺序排列查询的输出。 它与子句 return 或 with 一起使用。 |
3 | limit | 此子句用于将结果中的行限制为特定值。 |
4 | skip | 此子句用于定义从哪一行开始包括输出中的行。 |
5 | with | 该子句用于将查询部分链接在一起。 |
6 | unwind | 此子句用于将列表扩展为行序列。 |
7 | union | 该子句用于组合多个查询的结果。 |
8 | call | 该子句用于调用部署在数据库中的过程。 |
以下是常用的 neo4j cql 函数
序号 | cql 函数 | 使用 |
---|---|---|
1 | string | 它们用于处理字符串文字。 |
2 | aggregation | 它们用于对 cql 查询结果执行一些聚合操作。 |
3 | relationship | 它们用于获取关系的详细信息,例如 startnode、endnode 等。 |
我们将在后续章节中详细讨论所有 neo4j cql 命令、子句和函数的语法、用法和示例。
这些数据类型类似于 java 语言。 它们用于定义节点或关系的属性。
neo4j cql 支持以下数据类型
序号 | cql 数据类型 | 使用 |
---|---|---|
1 | boolean | 它用于表示布尔值:true、false。 |
2 | byte | 它用于表示 8 位整数。 |
3 | short | 它用于表示 16 位整数。 |
4 | int | 它用于表示 32 位整数。 |
5 | long | 它用于表示 64 位整数。 |
6 | float | 它用于表示 32 位浮点数。 |
7 | double | 它用于表示 64 位浮点数。 |
8 | char | 它用于表示 16 位字符。 |
9 | string | 它用于表示字符串。 |
以下是 neo4j cypher query 语言支持的运算符列表。
序号 | 类型 | 使用 |
---|---|---|
1 | 算术运算符 | , -, *, /, %, ^ |
2 | 比较运算符 | , <>, <, >, <=, >= |
3 | 布尔运算符 | and, or, xor, not |
4 | 字符串连接 | |
5 | 列表 | , in, [x], [x…..y] |
6 | 正则表达式 | =- |
7 | 字符串匹配 | starts with, ends with, constraints |
neo4j 支持在 neo4j cql where 子句中使用以下布尔运算符来支持多个条件。
序号 | 布尔运算符 | 描述 |
---|---|---|
1 | and | 它是一个支持 and 操作的 neo4j cql 关键字。 它就像 sql and 运算符。 |
2 | or | 它是一个支持 or 操作的 neo4j cql 关键字。 它就像 sql or 运算符。 |
3 | not | 它是一个支持 not 操作的 neo4j cql 关键字。 |
4 | xor | 它是一个支持 xor 操作的 neo4j cql 关键字。 |
neo4j 支持在 neo4j cql where 子句中使用以下比较运算符来支持条件。
序号 | 比较运算符 | 描述 |
---|---|---|
1 | = | 它是一个 neo4j cql “等于”运算符。 |
2 | < > | 它是一个 neo4j cql “不等于”运算符。 |
3 | < | 它是一个 neo4j cql“小于”运算符。 |
4 | > | 它是一个 neo4j cql“大于”运算符。 |
5 | <= | 它是一个 neo4j cql“小于或等于”运算符。 |
6 | > = | 它是一个 neo4j cql“大于或等于”运算符。 |