
业务逻辑基础:
在上图的基础上 红色的节点表示疾病名称 土黄色的点表示症状。
一个红色节点对应1个或者多个土黄色节点 即一个疾病可能有多种症状。
同样
一个土黄色节点对应一个或者多个红色节点 即同一个症状可能被多个疾病所拥有。
节点和节点之间仅存在关系 HAS
业务需求:
查询同时满足多个症状的疾病
如查询:同时存在症状 头痛和发热的疾病节点
match p=(a)-[r]-(b) where b.name in ['头痛','发热'] return a limit 5
如查询:同时存在症状 头痛发热 咳嗽 流鼻涕的疾病节点
match p=(a)-[r]-(b) where b.name in ['头痛','发热','流鼻涕','咳嗽'] return a limit 5
实际运行后发现这样写仅只能匹配 列表中的第一条症状的疾病 即不能同时满足列表中的所有症状。
在此希望求一解决方法。