gpt4 book ai didi

带时间戳的 Neo4j Cypher 查询

转载 作者:行者123 更新时间:2023-12-01 07:39:37 25 4
gpt4 key购买 nike

我正在尝试查询 10 个最近创建的节点的数据库。我有尝试

MATCH (a:Post) RETURN a ORDER BY TIMESTAMP() LIMIT 10

我也试过这个
MATCH (a:Post) RETURN a ORDER BY TIMESTAMP() DESC LIMIT 10

如果我以该顺序创建内容为 {one, two,three} 的节点,则两个查询都会以一、二、三的顺序生成节点。关于为什么会发生这种情况的任何想法或想法?

最佳答案

TIMESTAMP()scalar function表示查询执行的确切时间。它与创建节点或关系的时间无关。

这就是为什么您会为两个查询获得完全相同的结果。您只是按当前时间排序,这没有多大意义,因为所有记录的当前时间完全相同。

默认情况下,Neo4j 不存储任何创建时间戳。如果它们对您很重要,您需要将它们存储为附加属性。这是您应该使用标量函数的地方。

CREATE (:Post {created_at: TIMESTAMP()})

完成后,像这样匹配和订购。
MATCH (a:Post) RETURN a ORDER BY a.created_at LIMIT 10

请注意,您是按 created_at 订购的属性,而不是 TIMESTAMP()标量函数。

关于带时间戳的 Neo4j Cypher 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23440277/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com