Murmurhash3を使用して、テキスト入力用のユニークなハッシュを作成しています。テキストエントリが作成されるとき、私はthis php implementationを使用しています。これは32ビットのハッシュ整数を返し、ハッシュ値を取得します。ハッシュは、BINARY(16)データベース列に格納されます。既存のデータベースを更新して、this MySql implementationを使用してデータベースを更新する必要もあります。 PHPで作成されたハッシュと一致するように、私はそれをベースに変換し、それを小文字にします。PHP Murmurhash3とMySql Murmurhash3が一致しない場合があります
UPDATE column SET hash=LOWER(CONV(murmur_hash_v3(CONCAT(column1, column2), 0), 10, 32));
これは明らかにそれをカットしない時間の約80%のPHPバージョンに一致します。たとえば、文字列 'engtest'をハッシュすると、PHPでは15d15m
、MySqlでは3uqiuqa
が作成されます。しかし、文字列 'engtest sentence'は、両方に同じハッシュを作成します。私は何が間違っていますか?