使用cypher从特定node_auto_index获取随机记录的语法是什么?
我想有这个例子
START x=node:node_auto_index("uname:*") RETURN x SKIP somerandomNumber LIMIT 10;
有没有更好的方法不会返回连续的集合?
答案 0 :(得分:2)
在neo4j中没有类似于SQL的Random()的功能。
你必须在使用cypher之前在SKIP random
部分声明随机数(如果你没有直接从控制台查询而你使用neo4j的任何高级语言)
- 这将连续连续地给出节点的随机部分
或者你必须检索所有节点,然后在这些节点上用你的高级语言制作你自己的随机 - 这将为你提供一组随机的ndoes。
或者,为了在cypher中创建伪随机函数,我们可以尝试这样的事情:
START x=node:node_auto_index("uname:*")
WITH x, length(x.uname) as len
WHERE Id(x)+len % 3 = 0
RETURN x LIMIT 10
或根据uname节点的总数或uname param的普通ascii值在此查询中创建复杂的WHERE部分,例如