2014-02-26 145 views
3

我试图运行一个暗号询问我哪里有比较存储为一个字符串值,但是当我使用的功能toFloat,我得到一个错误的功能:的Neo4j - 未知“toFloat”在Cypher支架

Unknown function 'toFloat' (line 2, column 7) 
"WHERE toFloat(r.acquiredValue) >= 100000" 
    ^

我正在使用Neo4j 2.0.1,并根据Neo4j Cypher Refcard,函数存在,甚至通过查看社区版本的源代码,我可以发现函数被写入。

你有没有得到这个错误?如何将字符串转换为密码查询中的浮点数?谢谢。

编辑:下面是该查询试图运行

MATCH (profile)<-[:HAS_PROFILE]-(c:Customer)-[r:HAS_PRODUCT]->(product) 
WHERE toFloat(r.acquiredValue) >= 100000 
RETURN c.customerId AS CustomerID, profile.code AS ProfileCode, product.name AS ProductName, r.acquiredValue AS AcquiredValue 
ORDER BY r.acquiredValue DESC 
+0

你可以发布整个查询吗? –

+0

@SumeetSharma完成:) –

回答

3

toInt,而不是在2.0.1版本被添加toFloat。检查在这link. {line 28}它计划发布与2.0.2

+0

谢谢,我没有看到这个。 Neo4j团队应该更新Cypher Refcard! –

+0

是的,他们应该。我相信它是在错误早期更新的,现在已经恢复到2.0.1版本。一旦2.0.2发布,'toFloat'将重新出现。你可以在这里看到2.1版本:http://docs.neo4j.org/refcard/2.1/ –