You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何续写Cypher查询,返回Criterion对应的Skill及各去重Skill的计数

完整Cypher查询续写方案

你可以通过分组统计来实现需求,以下是续写后的完整查询:

MATCH (c:Criterion {id: 24}) 
OPTIONAL MATCH (c)<-[:HAS_VOTE_ON]-(d:Decision)-[:HAS_VOTE_ON]->(s:Skill) 
WHERE s.id <> c.id 
WITH c, s, d
GROUP BY c, s
RETURN 
  c AS targetCriterion, 
  s AS relatedSkill, 
  COUNT(d) AS voteCount

核心逻辑说明:

  • GROUP BY c, s:按目标Criterion(c)和关联的Skill(s)分组,确保每个不同的Skill与目标Criterion的组合单独成组,避免重复统计
  • COUNT(d) AS voteCount:统计每组中关联的Decision节点数量,也就是该Skill和目标Criterion通过投票决策建立关联的次数
  • 由于使用了OPTIONAL MATCH,如果目标Criterion没有匹配到任何符合条件的Skill,relatedSkill会返回null,对应的voteCount为0

如果不需要保留无匹配Skill的结果,可将OPTIONAL MATCH替换为MATCH,简化查询:

MATCH (c:Criterion {id: 24}) 
MATCH (c)<-[:HAS_VOTE_ON]-(d:Decision)-[:HAS_VOTE_ON]->(s:Skill) 
WHERE s.id <> c.id 
WITH c, s
GROUP BY c, s
RETURN 
  c AS targetCriterion, 
  s AS relatedSkill, 
  COUNT(*) AS voteCount

内容的提问来源于stack exchange,提问作者alexanoid

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 10:43:21