有没有办法在 Neo4j 中将集合作为属性包含在内?如果是这样,这是否会被视为符合 Neo4j 基本哲学的模式?
我对这样的节点感兴趣的根本原因是,我可以对一系列动作的想法进行编码。在这种情况下,发生了早餐、午餐和晚餐。我当然不希望每顿饭有 3 个单独的节点。拥有 3 段用餐关系也是没有意义的,因为它们不会与任何人建立联系。
我正在尝试开发这样的东西:
CREATE (:Node {name: 'John Doe', food: [{breakfast: ['cereal', 'juice']},
{lunch: ['sandwich', 'milk']},
{dinner: ['M&Ms']}])
我对这种性质的所有尝试都导致了这些错误:
Property values can only be of primitive types or arrays thereof
或者
Collections containing mixed types can not be stored in properties.
这让我相信这种类型的结构不是一个好主意,我假设有一个很好的理由。
你为什么不想要单独的节点来吃饭?
属性可以是值数组。
您的节点上可以只有 3 个附加属性(充当地图):
CREATE (:Person {name: 'John Doe',
breakfast: ['cereal', 'juice'],
lunch: ['sandwich', 'milk'],
dinner: ['M&Ms']})
Run Code Online (Sandbox Code Playgroud)
您也可以food.*用作属性名称。
| 归档时间: |
|
| 查看次数: |
1431 次 |
| 最近记录: |