Cree una identificación única a partir del número de transacción si no existe una identificación

Un usuario Pregunto ✅

PlátanoPlátano

Estoy intentando migrar algunos datos de clientes de forma manual y tengo problemas con los campos de ID únicos en blanco. Gracias de antemano por cualquier ayuda sobre cómo crear esta columna.

Algunas de mis filas tienen una identificación única y otras no. Necesito asignar ID únicos en una nueva columna llamada Identificación única a todas las filas pero es un poco complicado.

¿Es posible de alguna manera hacer lo siguiente en este orden?

  • Si identificación antigua no está en blanco y es único, usar identificación antigua
  • de lo contrario, si el número de transacción no está en blanco, use el número de transacción + el número de instancia de la transacción (por ejemplo, la tercera fila que contiene 5555 obtendrá la identificación 555503)
  • de lo contrario, prefije la columna con E y asígnele un número único incrementado

P.EJ:

identificación antigua Número de transacción Nombre Identificación única
11653 Alicia 1165300
24 11654 Marcos 24
11654 Kate 1165401
25 11655 Ana 25
6 11656 Pedro 6
24 11657 Terencio 1165701
11658 Andrés 1165800
11658 Toby 1165801
11658 laura 1165802
samantha E000001
Sara E000002
Kate E000003

amichandak

@BananaBanana,

Agregar e indexar columna: https://stackoverflow.com/questions/45715963/creating-an-index-column-for-power-bi

y crear nuevas columnas como

rango = «E» & format(rangox(filtro(Tabla, está en blanco([TransactionNumber]) && está en blanco([OldID])),[Index],,asc), «00000»)

ID único =

Cambiar =( Verdadero(),
está en blanco([OldID]) && está en blanco([TransactionNumber]) , [Rank],
está en blanco([OldID]) , [TransactionNumber],
[OldID]
)

amichandak

@BananaBanana,

Agregar e indexar columna: https://stackoverflow.com/questions/45715963/creating-an-index-column-for-power-bi

y crear nuevas columnas como

rango = «E» & format(rangox(filtro(Tabla, está en blanco([TransactionNumber]) && está en blanco([OldID])),[Index],,asc), «00000»)

ID único =

Cambiar =( Verdadero(),
está en blanco([OldID]) && está en blanco([TransactionNumber]) , [Rank],
está en blanco([OldID]) , [TransactionNumber],
[OldID]
)

PlátanoPlátano

En respuesta a amichandak

Esto parece realmente prometedor, pero aún duplica algunos de mis valores donde el número de transacción anterior existe en varios registros.

¿Alguna idea de cómo agregar el número de ocurrencia a cada número de transacción? (así que la primera transacción etiquetada como 0400 se etiqueta como 040001, luego 040002, etc.)

PlátanoPlátano

En respuesta a PlátanoPlátano

Bien, eso despertó que tenía que hacer que la columna de números aleatorios subiera a 10,000 antes de que funcionara correctamente. Para ser honesto, todavía no entiendo cómo funciona esta columna, pero al menos funcionó, ¡gracias!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *