Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

144
Views
¿Existe una característica de Postgres o una función integrada que limite la visualización de uuids solo a lo necesario para que sean identificables de forma única?

Tendría que devolver la parte necesaria para identificar de forma única la fila, incluso si una declaración de selección no devolviera todas las filas, por supuesto, para ser de alguna utilidad. Y no estoy seguro de cómo funcionaría si la columna uuid no fuera parte de un pk/index y se repitiera.

¿Existe esto?

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Creo que tendría que decidir qué constituye identificable de forma única asumiendo que varios lugares de la derecha lo hacen identificable de forma única. Creo que esto es una locura, pero la forma en que lo harías es algo como esto:

 SELECT RIGHT(uuid_column_name::text, 7) as your_truncated_uuid FROM table_with_uuid_column;

Eso toma los 7 lugares desde la derecha del valor de texto de la columna uuid.

over 4 years ago · Santiago Trujillo Report

0

No no hay. Un UUID es una representación hexadecimal de un número aleatorio de 120 bits, al menos la variante v4. Ni siquiera se garantiza que sea único, aunque es probable que lo sea.

Tienes algunas opciones para implementar esto:

  • elimine los caracteres y espere que no introduzca una colisión. Por ejemplo, si hace d8366842-8c1d-4a31-a4c0-f1765b8ab108 d8366842 , tiene 16**8 combinaciones posibles, o 4,294,967,296. ¿Cuál es la probabilidad de que su conjunto de datos tenga una colisión con 4200 millones (2**32) de posibilidades? Quizás pueda agregar 8c1d nuevamente para que sea 16 ** 12 o 28,147,497,6710,656 posibilidades.
  • procesa y procesa cada fila en busca de colisiones y aumenta recursivamente el marco de caracteres hasta que no se encuentran colisiones, o procesa todas las permutaciones posibles.

Dicho todo esto, otra idea es usar ints y no uuids y luego usar http://hashids.org/ que tiene un complemento para PostgreSQL. Este es el método que usa YouTube afaik.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!