PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

PostgreSQL - Atribui valor inteiro à string na instrução case


Isso produzirá um número "único" para cada valor:
('x'||substr(md5("PQ"."Value"),1,8))::bit(64)::bigint

A rigor, há uma chance de colisão, mas é muito remota.

Se o resultado for "muito grande", você pode tentar o módulo:
<above-calculation> % 10000

Embora as colisões tenham uma chance de 0,01%, você deve tentar esta fórmula em todos os valores conhecidos para garantir que não haja colisões.