假设我有一个 csv 文件,其中一列是 unix 时间戳。它没有对此进行排序,但按顺序遵循这些可能是一种有用的关系。当我想要的时候,我可以使用 ORDER BY,但是添加关系指针应该更快,并且使用 NOSQL?我是否必须在摄取时对其进行排序并添加关系,或者我可以在查询后进行吗?
在我运行第一个查询并得到一个子集后:
result = engine.execute(START...WHERE...ORDER BY time)
然后我可以通过添加这种关系的结果,例如:
prev.createRelationshipTo(next, PRECEDES);
我使用 foreach 或 iterator 尝试了两种不同的方法,并且都在将字符串转换为节点时出现运行时错误:
for (Map<String, Object>row : result) {
String n = (String) row.values().iterator().next();
System.out.println(n);
}
Iterator<Node> nodes = result.columnAs("n.chosen");
if (nodes.hasNext()) {
Node prev = nodes.next();
while (nodes.hasNext()) {
Node n = nodes.next();
prev.createRelationshipTo(n, null);
prev = n;
}
}
此外,存在具有相同时间戳的两行的边缘情况。我不在乎选择的顺序,但我希望它不会破坏关系链。