如何使用 Neo4j 为字符串生成唯一的哈希码?

How to generate unique hash code for a string with Neo4j?

我只想使用 Cypher 为字符串生成哈希码。我该怎么做?

是的,一定要使用 APOC hash functions 之一,但您可以创建自己的哈希函数。

例如,Cypher.

中有一个 hacky djb2 字符串哈希实现
WITH " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~" as chars
RETURN reduce(acc=5381, c  in split("Gimme a String Hash Please!","") | (acc*33 + size(split(chars,c)[0]))%toInteger(2^32))

337735339 is returned for this string.