检查子图是否满足整体条件

时间:2019-08-09 11:27:41

标签: neo4j cypher

我很难解释,因此请考虑以下图片 enter image description here

我正在尝试选择满足仓库要求的所有产品

在此示例中,我需要选择最大尺寸为5且最大重量为10的所有产品。

为简化起见,我只有MAX(没有MIN或EQ)约束,因此可以对运算符进行硬编码。

我尝试使用COLLECT和ALL运算符对需求子图进行分组,但是失败了。

查询以创建图形

$link = mysqli_connect($servidor, $usuario, $contraseña, $nombrebd);

更新

以下查询显然可以解决问题:

CREATE
  // NODES
  (warehouse:WAREHOUSE{name:'My Warehouse'}),
  (smallProduct:PRODUCT{name:'Small Product'}),
  (largeProduct:PRODUCT{name:'Large Product'}),
  // RELATIONSHIPS
  (size:CONSTRAINT{name:'Size'}),
  (weight:CONSTRAINT{name:'Weight'}),
  (warehouse)-[:LIMIT{value:5}]->(size),
  (warehouse)-[:LIMIT{value:5}]->(weight),
  (smallProduct)-[:AMOUNT{value:3}]->(size),
  (smallProduct)-[:AMOUNT{value:2}]->(weight),
  (largeProduct)-[:AMOUNT{value:10}]->(size),
  (largeProduct)-[:AMOUNT{value:4}]->(weight)

我想知道是否有更好的解决方案。

0 个答案:

没有答案