我想使用Cypher查询所有产品的有效规格,但这些规格是在产品的不同父级定义的。
我有一个数据模型,代表一个具有C1,C2,C3,...和最低级别的产品P的产品分类树。为简化产品规格的维护和数据输入,产品规格的有效性在分类级别定义。产品“继承”对其所有父类别有效的规范,直到分类树的根为止。
(简化的)数据模型如图所示。在这种情况下,将为分类级别C1,C2和C3定义产品规格。产品已连接到最低分类级别C3。 我的目标是根据产品P与分类级别C1,C2和C3的关系来查询对产品P有效的所有规格。
我有以下问题:
其他提示?
谢谢
答案 0 :(得分:1)
您可以通过匹配长度可变的样式来找到产品的所有规格。
假设您有一个参数productId
,则应使用类似的内容
MATCH (p:PRODUCT {productId:$productiId)-[:BELONGS_TO*]->(c:Category)<-[:VALID_FOR]-(s:Specification)
RETURN s
检索相关规范。
由于您似乎正在处理材料明细表,因此您可能需要查看以下内容:
通过将复杂的产品规格分成“原子” https://www.slideshare.net/neo4j/graphtour-neo4j-murrelektronik
进行管理和
有关如何跟踪BOM表版本的示例: https://www.youtube.com/watch?v=7iMraBHtTqE
披露:我是Graphileon小组的成员,并参与幻灯片和视频中显示的内容。