Neo4j 对正确使用顺序感到困惑

Neo4j 对正确使用顺序感到困惑,neo4j,neo4j-apoc,Neo4j,Neo4j Apoc,我正在用neo4j的日期做实验。现在我想按ISODateString对结果进行排序。我创建了一个密码查询,如下所示: MATCH(e:Expedition {id : "BJGYmzwZb"})-[pje]-(u:User) WHERE (e)-[:POSSIBLY_JOINS_EXPEDITION]-(u) OR (e)-[:JOINS_EXPEDITION]-(u) WITH e, u, apoc.date.parse(pje.createdAt, 's',"yyyy-MM-dd'T'H

我正在用neo4j的日期做实验。现在我想按ISODateString对结果进行排序。我创建了一个密码查询,如下所示:

MATCH(e:Expedition {id : "BJGYmzwZb"})-[pje]-(u:User) 
WHERE (e)-[:POSSIBLY_JOINS_EXPEDITION]-(u) OR (e)-[:JOINS_EXPEDITION]-(u) 
WITH e, u, apoc.date.parse(pje.createdAt, 's',"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'") as date
ORDER by date 
OPTIONAL MATCH(u)<-[invitee:POSSIBLY_JOINS_EXPEDITION]-(e) 
OPTIONAL MATCH(u)-[attendee:JOINS_EXPEDITION]->(e)
OPTIONAL MATCH(u)-[applicant:POSSIBLY_JOINS_EXPEDITION]->(e) 
RETURN date, {user: properties(u), isInvitee: COUNT(invitee) > 0, isApplicant: COUNT(applicant) > 0, isAttendee: COUNT(attendee) > 0} as u

有什么建议我做错了什么?我是否需要以不同方式处理
可选匹配
-添加?

按日期排序
放在
返回
语句之后,如下所示:

MATCH(e:Expedition {id : "BJGYmzwZb"})-[pje]-(u:User) 
WHERE (e)-[:POSSIBLY_JOINS_EXPEDITION]-(u) OR (e)-[:JOINS_EXPEDITION]-(u) 
WITH e, u, apoc.date.parse(pje.createdAt, 's',"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'") as date
OPTIONAL MATCH(u)<-[invitee:POSSIBLY_JOINS_EXPEDITION]-(e) 
OPTIONAL MATCH(u)-[attendee:JOINS_EXPEDITION]->(e)
OPTIONAL MATCH(u)-[applicant:POSSIBLY_JOINS_EXPEDITION]->(e) 
RETURN date, {user: properties(u), isInvitee: COUNT(invitee) > 0, isApplicant: COUNT(applicant) > 0, isAttendee: COUNT(attendee) > 0} as u
ORDER by date 
MATCH(e:Expedition{id:“BJGYmzwZb”})-[pje](u:User)
其中(e)-[:可能加入探险队]-(u)或(e)-[:加入探险队]-(u)
以e,u,apoc.date.parse(pje.createdAt,'s','yyyy-MM-dd'T'HH:MM:ss.SSS'Z')作为日期
可选匹配(u)(e)
可选匹配(u)-(申请人:可能加入考察队)->(e)
返回日期,{user:properties(u),isInvitee:COUNT(invitee)>0,isApplication:COUNT(applicator)>0,isAttendee:COUNT(attendee)>0}作为u
按日期订购

如果我不想返回日期,则此操作无效。任何解决方法?尝试:
MATCH(e:Expedition{id:“BJGYmzwZb”})-[pje]-(u:User)其中(e)-[:可能加入远征]-(u)与e,u,apoc.date匹配。解析(pje.createdAt,'yyyy-MM-dd'T'HH:MM:ss.SSS'Z')作为日期可选匹配(u)(e)可选匹配(u)-[申请人:可能加入远征]>(e)与日期,u,被邀请人,申请人,与会者按日期排序返回{user:properties(u),isInvitee:COUNT(invitee)>0,isapplicator:COUNT(申请人)>0,isAttendee:COUNT(attendee)>0}请编辑您的问题并发布您的数据集样本。这样我就可以在这里重现你的场景了!谢谢
MATCH(e:Expedition {id : "BJGYmzwZb"})-[pje]-(u:User) 
WHERE (e)-[:POSSIBLY_JOINS_EXPEDITION]-(u) OR (e)-[:JOINS_EXPEDITION]-(u) 
WITH e, u, apoc.date.parse(pje.createdAt, 's',"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'") as date
OPTIONAL MATCH(u)<-[invitee:POSSIBLY_JOINS_EXPEDITION]-(e) 
OPTIONAL MATCH(u)-[attendee:JOINS_EXPEDITION]->(e)
OPTIONAL MATCH(u)-[applicant:POSSIBLY_JOINS_EXPEDITION]->(e) 
RETURN date, {user: properties(u), isInvitee: COUNT(invitee) > 0, isApplicant: COUNT(applicant) > 0, isAttendee: COUNT(attendee) > 0} as u
ORDER by date