首页  >  文章  >  Spring Data Neo4j 在更新操作后返回受影响节点的计数

Spring Data Neo4j 在更新操作后返回受影响节点的计数

PHPz
PHPz转载
2024-02-22 14:01:191188浏览

php小编西瓜带来最新java问答:Spring Data Neo4j在更新操作后如何返回受影响节点的计数?Spring Data Neo4j是一个强大的图数据库框架,提供了丰富的功能和灵活的API。在进行更新操作时,有时需要获取更新后受影响节点的数量,以便进行后续处理。本文将介绍如何使用Spring Data Neo4j实现这一功能,帮助开发者更好地利用图数据库的特性。

问题内容

使用 spring data neo4j 存储库执行更新操作后,有什么方法可以返回受影响节点的数量吗?

例如

@Query("MATCH (n:Student) WHERE n.id IN $idList SET n.isRegistered = true")
Integer updateRegisterInfo(@Param("idList") List<String> idList);

但是 sdn 对于此类操作只能返回 void/null 值。

谢谢

解决方法

如果您想要应用 set 的节点数,请返回行数:

match (n:student) where n.id in $idlist 
set n.isregistered = true
return count(*) as numaffected

如果您想要 isregistered 值已更改的节点计数,请使用 where 子句删除已具有 isregistered = true 的节点:

MATCH (n:Student) 
WHERE n.id IN $idList AND NOT coalesce(n.isRegistered, false) 
SET n.isRegistered = true
RETURN count(*) AS numAffected

(我刚刚将其格式化为独立的 cypher,以使其更易于阅读。)

以上是Spring Data Neo4j 在更新操作后返回受影响节点的计数的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:stackoverflow.com。如有侵权,请联系admin@php.cn删除