如何使用 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.
我只想使用 Cypher 为字符串生成哈希码。我该怎么做?
是的,一定要使用 APOC hash functions 之一,但您可以创建自己的哈希函数。
例如,Cypher
.
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.