sql >> Database teknologi >  >> RDS >> PostgreSQL

PostgreSQL - Tildel heltalsværdi til streng i case-sætning

Dette vil producere et "unikt" tal for hver værdi:

('x'||substr(md5("PQ"."Value"),1,8))::bit(64)::bigint

Strengt taget er der risiko for en kollision, men det er meget fjernt.

Hvis resultatet er "for stort", kan du prøve modulus:

<above-calculation> % 10000

Selvom kollisioner så ville være en 0,01 % chance, bør du prøve denne formel mod alle kendte værdier for at sikre, at der ikke er nogen kollisioner.



  1. Konverter en mysql-dato (datetime) til et bedre datoformat ved hjælp af php

  2. "Forespørgsel ikke tilladt i Waitfor" Fejl 101 i SQL Server

  3. MySQL FEJL 1045 (28000):Adgang nægtet for brugeren 'bill'@'localhost' (ved hjælp af adgangskode:JA)

  4. Samtidig problem med psycopg2, Redshift og unittest