Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
neo4j:在查询中有一个看起来像数学运算的字符串_Neo4j_Cypher - Fatal编程技术网

neo4j:在查询中有一个看起来像数学运算的字符串

neo4j:在查询中有一个看起来像数学运算的字符串,neo4j,cypher,Neo4j,Cypher,可能是个愚蠢的问题,但我想不出来: 节点的属性为:1-4567655 我假设这个问题 MATCH (t:Ticket {number:"1-4567655"}) return t 失败原因neo4j计算1减去4567655,当然不匹配。如果这是原因,我如何查询该属性呢?我试过了 MATCH (t:Ticket {number:toString(1-556264051)}) RETURN t 但这也不起作用。有人知道如何搜索这个吗 谢谢 如果执行此查询: MATCH (t:Ticket {nu

可能是个愚蠢的问题,但我想不出来: 节点的属性为:1-4567655

我假设这个问题

MATCH (t:Ticket {number:"1-4567655"}) return t
失败原因neo4j计算1减去4567655,当然不匹配。如果这是原因,我如何查询该属性呢?我试过了

MATCH (t:Ticket {number:toString(1-556264051)}) RETURN t
但这也不起作用。有人知道如何搜索这个吗

谢谢

如果执行此查询:

MATCH (t:Ticket {number:"1-4567655"}) return t
Neo4J肯定会而不是进行计算,并最终得到字符串-4567654(如果您进行了计算,您将得到该字符串)。不,您实际上是在指定一个值为“1-4567655”的常规字符串。因此,如果此查询未返回任何结果,最可能的原因是您没有具有该编号的
票证
节点

你可以用Neo4j做简单的数学题。查询
返回10-2
给出答案8。运行
时返回1-556264051我得到了
-556264050
。在上面使用
toString
也可以。所以再一次,我认为您的数据库实际上缺少一个
Ticket
节点,该节点有一个具有该值的number属性

number
属性是否可能是另一种类型(长或双精度)而不是字符串

例如,我这样做:

create (t:Ticket {number: 1});
如果您尝试将其与:
match(t:Ticket{number:“1”})匹配,则返回t
您将一无所获。因为字符串
“1”
和数字
1
不是一回事

尝试更改查询以查找数字(而不是字符串),我打赌这会有所帮助。

如果您执行此查询:

MATCH (t:Ticket {number:"1-4567655"}) return t
Neo4J肯定会而不是进行计算,并最终得到字符串-4567654(如果您进行了计算,您将得到该字符串)。不,您实际上是在指定一个值为“1-4567655”的常规字符串。因此,如果此查询未返回任何结果,最可能的原因是您没有具有该编号的
票证
节点

你可以用Neo4j做简单的数学题。查询
返回10-2
给出答案8。运行
时返回1-556264051我得到了
-556264050
。在上面使用
toString
也可以。所以再一次,我认为您的数据库实际上缺少一个
Ticket
节点,该节点有一个具有该值的number属性

number
属性是否可能是另一种类型(长或双精度)而不是字符串

例如,我这样做:

create (t:Ticket {number: 1});
如果您尝试将其与:
match(t:Ticket{number:“1”})匹配,则返回t
您将一无所获。因为字符串
“1”
和数字
1
不是一回事

尝试更改查询以查找数字(而不是字符串),我打赌这会有所帮助。

如果您执行此查询:

MATCH (t:Ticket {number:"1-4567655"}) return t
Neo4J肯定会而不是进行计算,并最终得到字符串-4567654(如果您进行了计算,您将得到该字符串)。不,您实际上是在指定一个值为“1-4567655”的常规字符串。因此,如果此查询未返回任何结果,最可能的原因是您没有具有该编号的
票证
节点

你可以用Neo4j做简单的数学题。查询
返回10-2
给出答案8。运行
时返回1-556264051我得到了
-556264050
。在上面使用
toString
也可以。所以再一次,我认为您的数据库实际上缺少一个
Ticket
节点,该节点有一个具有该值的number属性

number
属性是否可能是另一种类型(长或双精度)而不是字符串

例如,我这样做:

create (t:Ticket {number: 1});
如果您尝试将其与:
match(t:Ticket{number:“1”})匹配,则返回t
您将一无所获。因为字符串
“1”
和数字
1
不是一回事

尝试更改查询以查找数字(而不是字符串),我打赌这会有所帮助。

如果您执行此查询:

MATCH (t:Ticket {number:"1-4567655"}) return t
Neo4J肯定会而不是进行计算,并最终得到字符串-4567654(如果您进行了计算,您将得到该字符串)。不,您实际上是在指定一个值为“1-4567655”的常规字符串。因此,如果此查询未返回任何结果,最可能的原因是您没有具有该编号的
票证
节点

你可以用Neo4j做简单的数学题。查询
返回10-2
给出答案8。运行
时返回1-556264051我得到了
-556264050
。在上面使用
toString
也可以。所以再一次,我认为您的数据库实际上缺少一个
Ticket
节点,该节点有一个具有该值的number属性

number
属性是否可能是另一种类型(长或双精度)而不是字符串

例如,我这样做:

create (t:Ticket {number: 1});
如果您尝试将其与:
match(t:Ticket{number:“1”})匹配,则返回t
您将一无所获。因为字符串
“1”
和数字
1
不是一回事


尝试更改查询以查找数字(而不是字符串),我敢打赌这会有所帮助。

太棒了。看来我在这里缺乏知识。当我尝试不带引号的查询时,票证是find-现在可以了。当我想查询另一个属性时,例如like状态,我仍然需要查询like。数字的属性不是字符串吗?如果是这样的话,在创建该属性时如何将其定义为字符串以避免这种情况?我只使用set t.number=csvLine[1]。也许我也需要设置类型?感谢您的帮助,非常感谢。通过CSV导入时,如果您想保证这是一个字符串,请使用toString()。太棒了。看来我在这里缺乏知识。当我尝试不带引号的查询时,票证是find-现在可以了。Wh