Neo4j在飞行类型转换

时间:2014-03-22 07:54:46

标签: neo4j

我刚刚开始学习Neo4j,我偶然发现了一些问题。

看起来Neo4j使用强类型而没有动态类型转换,即RETURN '17' = 17导致falseRETURN '10' > 5导致语法错误。

对于NoSQL和无架构数据库来说,实现这种严格的行为对我来说非常奇怪。即使是强类型的基于模式的数据库(如MySQL和Postgresql)也允许在语句中进行类型转换。这是Neo4j背后的意识形态吗?如果是这样的话?

Github issue.

1 个答案:

答案 0 :(得分:1)

在Neo4j 2.1中添加了类型转换功能,例如toInttoFloat来处理转换。

在2.0.x中,您可以在另一个方向使用str(17) = str('17')

Neo4j本身对结构信息不太严格。但对价值观更加严格。即您放入属性的值将完全返回,您必须自己将其转换为其他类型。其中一些源于其Java历史,并且已经因为密码而松动。