これにより、値ごとに「一意の」数値が生成されます。
('x'||substr(md5("PQ"."Value"),1,8))::bit(64)::bigint
厳密に言えば、衝突の可能性はありますが、それは非常に遠いです。
結果が「大きすぎる」場合は、モジュラスを試すことができます:
<above-calculation> % 10000
その場合、衝突は0.01%の確率になりますが、衝突がないことを確認するために、すべての既知の値に対してこの式を試す必要があります。
これにより、値ごとに「一意の」数値が生成されます。
('x'||substr(md5("PQ"."Value"),1,8))::bit(64)::bigint
厳密に言えば、衝突の可能性はありますが、それは非常に遠いです。
結果が「大きすぎる」場合は、モジュラスを試すことができます:
<above-calculation> % 10000
その場合、衝突は0.01%の確率になりますが、衝突がないことを確認するために、すべての既知の値に対してこの式を試す必要があります。