Collections 我无法将二维数组属性添加到关系中

Collections 我无法将二维数组属性添加到关系中,collections,neo4j,cypher,Collections,Neo4j,Cypher,我测试二维数组,如下所示: RETURN [[0,1],[2,3],[4,5],[6,7],[8,9]] AS collection 它起作用了 但是,当我尝试向关系添加二维数组属性时,如: MATCH (station_44:STATION {id:44}), (station_38:STATION {id:38}) CREATE UNIQUE (station_44)-[:test2 { path:[[1,2],[2,3],[3,4]] } ]->(station_38) 我得到错

我测试二维数组,如下所示:

RETURN [[0,1],[2,3],[4,5],[6,7],[8,9]] AS collection
它起作用了

但是,当我尝试向关系添加二维数组属性时,如:

MATCH (station_44:STATION {id:44}), (station_38:STATION {id:38}) CREATE UNIQUE (station_44)-[:test2 { path:[[1,2],[2,3],[3,4]] } ]->(station_38)
我得到错误:包含混合类型的集合不能存储在属性中


我怎么做?这是一个bug吗?

您不能将包含数组的数组作为节点或关系属性值

只能有一个基元类型的数组,例如
int
string

无论如何,如果您需要查询数组的子维度,那么您的模型肯定是错误的,因此我建议您为需要执行的查询重新定义您的模型


如果只想将其存储为属性以供以后检索,可以将其存储为json字符串,并在应用程序级别进行序列化/反序列化。

我想将纬度、经度数组存储为属性。比如:[[116.445552,39.951749][116.444916,39.951656]]。正如您所建议的,您的意思是将其描述为JSON字符串,如:“[[116.4455552,39.951749][116.444916,39.951656]]”对吗?是的,所以在存储之前用JSON编码,在检索解码JSON之后用JSON编码。