Neo4j CQL -(14) -UNION联合
2017-08-25 11:12
225 查看
与SQL一样,Neo4j CQL有两个子句,将两个不同的结果合并成一组结果
UNION子句
它将两组结果中的公共行组合并返回到一组结果中。 它不从两个节点返回重复的行。
限制:
结果列类型和来自两组结果的名称必须匹配,这意味着列名称应该相同,列的数据类型应该相同。
UNION子句语法
语法说明:
注意 -
如果这两个查询不返回相同的列名和数据类型,那么它抛出一个错误。
示例:我们将采取一个银行应用程序的节点:信用卡式和借记卡解释UNION子句
信用卡式节点数据:
第1步 -打开Neo4j的数据浏览器
第2步 -在数据浏览器的美元提示符处键入以下命令。
查看 CreditCard
点击“下载CSV”来查看结果
紧接着,咱们查看DebitCard
点击“下载CSV”来查看结果
相互对比一下,咱们可以发现他们的所有内容相似,咱们使用UNION 直接查询,将会有什么情况发生呢?
结果显示为:
这表明,这两个查询应具有相同的列名。
首先查询有:cc.id,cc.number。
第二个查询有:dc.id,dc.number。
这里既有信用卡式和借记卡具有相同的属性名:身份证和号码,但他们有不同的节点名称前缀。这就是为什么UNION命令显示此错误消息。为了避免这种错误,Neo4j的CQL提供“AS”子句。
于是,对于union语句的使用,应当在保证各个属性均一致且合并时,应当改为同一名称的基础下,为如下:
结果如图:
本文参考:https://www.w3cschool.cn/neo4j/neo4j_cql_union.html
UNION UNION ALL
UNION子句
它将两组结果中的公共行组合并返回到一组结果中。 它不从两个节点返回重复的行。
限制:
结果列类型和来自两组结果的名称必须匹配,这意味着列名称应该相同,列的数据类型应该相同。
UNION子句语法
<MATCH Command1> UNION <MATCH Command2>
语法说明:
注意 -
如果这两个查询不返回相同的列名和数据类型,那么它抛出一个错误。
示例:我们将采取一个银行应用程序的节点:信用卡式和借记卡解释UNION子句
信用卡式节点数据:
第1步 -打开Neo4j的数据浏览器
第2步 -在数据浏览器的美元提示符处键入以下命令。
查看 CreditCard
MATCH (cc:CreditCard) RETURN cc
点击“下载CSV”来查看结果
紧接着,咱们查看DebitCard
MATCH (dc:DebitCard) RETURN dc
点击“下载CSV”来查看结果
相互对比一下,咱们可以发现他们的所有内容相似,咱们使用UNION 直接查询,将会有什么情况发生呢?
MATCH (cc:CreditCard) RETURN cc.id,cc.number UNION MATCH (dc:DebitCard) RETURN dc.id,dc.number
结果显示为:
这表明,这两个查询应具有相同的列名。
首先查询有:cc.id,cc.number。
第二个查询有:dc.id,dc.number。
这里既有信用卡式和借记卡具有相同的属性名:身份证和号码,但他们有不同的节点名称前缀。这就是为什么UNION命令显示此错误消息。为了避免这种错误,Neo4j的CQL提供“AS”子句。
于是,对于union语句的使用,应当在保证各个属性均一致且合并时,应当改为同一名称的基础下,为如下:
MATCH (cc:CreditCard) RETURN cc.id as id,cc.number as number,cc.name as name, cc.valid_from as valid_from,cc.valid_to as valid_to UNION MATCH (dc:DebitCard) RETURN dc.id as id,dc.number as number,dc.name as name, dc.valid_from as valid_from,dc.valid_to as valid_to
结果如图:
本文参考:https://www.w3cschool.cn/neo4j/neo4j_cql_union.html
相关文章推荐
- 14:枚举enum、联合union、动态内存分配malloc
- 2.4.2 差别联合类型(discriminated union type)
- 数据结构《14》----并查集 Union-Find
- Mysql联合查询UNION和Order by同时使用报错问题的解决办法
- C++之union联合/共用体声明、定义和使用详解
- neo4j CQL 使用
- 结构体struct && 联合union
- 联合(union)的作用
- 数据库语句大全之联合语句UNION/内连接查询/外连接查询
- C语言数据类型:联合(union)
- C语言的联合(union)介绍
- mySql联合两个查询结果用UNION或者UNION ALL
- C/C++中的联合 union
- 关于 联合查询 UNION 和Order by
- Neo4j CQL - (12)-SET子句
- SQL联合查询优化 用union all来代替union
- 一道关于联合(union)的笔试题
- SQL--联合查询【Union】
- 数据结构《14》----并查集 Union-Find
- C/C++中的联合 union