我在数据库中有10M个节点。 我正在使用CYPHER来更新节点。在进行节点返回时,返回10(使用LIMIT)需要大约1秒钟
START e = node:events('shop:12345 AND attributes_vin:[* TO *]')
WHERE HAS(e.attributes_vin)
//SET e.attributes_vin = LOWER(e.attributes_vin)
RETURN e
LIMIT 10
当我为相同的10个节点添加SET e.attributes_vin = LOWER(e.attributes_vin)
时,需要2分钟。
我做错了什么?感谢。
答案 0 :(得分:2)
我认为您设置的限制仅限制返回的内容,而不是您设置属性的节点(在所有匹配的节点上设置属性,并返回其中10个)。
您可以尝试先使用WITH
破解查询并在那里设置限制吗?
START e = node:events('shop:12345 AND attributes_vin:[* TO *]')
WHERE HAS(e.attributes_vin)
WITH e LIMIT 10
SET e.attributes_vin = LOWER(e.attributes_vin)
RETURN e