Data structures Neo4J数据建模
我有一个用例。Data structures Neo4J数据建模,data-structures,neo4j,graph-databases,Data Structures,Neo4j,Graph Databases,我有一个用例。产品组合在两个或两个以上的商店以不同的价格出售。并且每个存储都映射到一个状态。 我如何构建这个场景 请在下面的结构中找到关系 Store{name:"Store 1"} -[:LOCATED_IN]-> State{name:"AZ"} Store{name:"Store 2"} -[:LOCATED_IN]-> State{name:"MO"} Store{name:"Store 1"} -[:SELLS]-> ComboPack{name:"Combo1"}
产品组合
在两个或两个以上的商店以不同的价格出售。并且每个存储都映射到一个状态
。
我如何构建这个场景
请在下面的结构中找到关系
Store{name:"Store 1"} -[:LOCATED_IN]-> State{name:"AZ"}
Store{name:"Store 2"} -[:LOCATED_IN]-> State{name:"MO"}
Store{name:"Store 1"} -[:SELLS]-> ComboPack{name:"Combo1"}
Store{name:"Store 2"} -[:SELLS]-> ComboPack{name:"Combo1"}
ComboPack{name:"Combo1"} -[:CONTAINS]-> Product{name:"Prod 1"}
ComboPack{name:"Combo1"} -[:CONTAINS]-> Product{name:"Prod 2"}
我想知道如何放置链接,使每个产品的价格在不同商店/州的产品级别确定
提前感谢]您可以将价格设置为[:CONTAINS]
关系的属性
Combo
的总价也应该作为该ComboPack
节点的一个属性(这里您复制数据以交换更快的sum
查询)
更新
根据您的要求,您应该将Store-[]->Combo
关系分解为更小的部分
一种方法是引入SpecificCombo节点:
(:Store)-[:SELLS]->(:SpecificCombo)-[:IS_A]->(:Combo)
(Combo)-[:CONTAINS]->(Product)
(:SpecificCombo)-[:INCLUDE {price: 15$}]->(Product)
谢谢但我的情况如下:产品在州以低于价格出售:AZ
产品1
是20美元产品2
是10美元并且在州以低于价格出售:MO
产品1
是25美元产品2
是15美元有可能解决这个问题吗情况如何?