複数カーディナリティ・プロパティ

複数のカーディナリティのプロパティを設定する方法。

複数のカーディナリティにより、1つのキー内に複数の値を格納することができます。

手順

  • 複数カーディナリティ・プロパティに対して値の配列を入力します。
    schema.propertyKey('item_mult').Text().multiple().ifNotExists().create()
    schema.vertexLabel('fridgeItem_multiple').properties('item_mult').ifNotExists().create()
    graph.addVertex(label,'fridgeItem_multiple','name', 'item1','item_mult', ['cheese', 'cheddar cheese'])
    graph.addVertex(label, 'fridgeItem_multiple','name', 'item2', 'item_mult',['yogurt','Greek yogurt'], 'item_mult', ['key lime yogurt'])
    g.V().hasLabel('fridgeItem_multiple').valueMap()
    item_multは複数のカーディナリティで定義されているため、キー値を何度でも挿入できます。値の挿入に2つのリストを使用してもかまいません。すべての値は単一のリストに格納されることに注意してください。
    ==>{item_mult=[cheddar cheese, cheese], name=[item1]}
    ==>{item_mult=[Greek yogurt, key lime yogurt, yogurt], name=[item2]}
  • 挿入されたデータをさらに探索します。
    g.V().has('fridgeItem_multiple', 'name', 'item2').values('item_mult')
    ==>Greek yogurt
    ==>key lime yogurt
    ==>yogurt
    この出力により、リスト内の各エントリが個別に格納された値であることが明らかです。
  • 特定の値を指定して、1つのリスト項目を確認します。
    g.V().hasLabel('fridgeItem_multiple').has('item_mult', 'Greek yogurt').valueMap()
    
    ==>{item_mult=[Greek yogurt, key lime yogurt, yogurt], name=[item2]}