¿Cómo eliminar y agregar claves? Table.ReplaceKeys ¿cómo funciona?

Un usuario Pregunto ✅

richard-powerbi

Tengo una tabla SQL cargada en PBI. Quiero crear mis propias claves primarias y calificarlas como claves en PBI.

La documentación de Table.ReplaceKeys es realmente mala. ¿Alguien puede explicar cómo funciona? ¿O hay otra forma de hacer esto?

Hola @ richard-powerbi,

Parece cambiar de clave, puede probar el código M debajo y consultar power-query-m-primer-part13-tables-table-think-ii y esta publicación para obtener más detalles.

let

   
  
  Source = #table(
    {"CompanyID", "Name", "Location"}, 
      {
        {1, "ABC Company", "Chicago"}, 
        {2, "ABC Company", "Charlotte"}, 
        {3, "Some Other Company", "Cincinnati"}
      }
    ),
  KeysTagged = Table.AddKey(Source, {"CompanyID"}, true),
  aa=Table.ReplaceKeys(
        KeysTagged,
        {
            [Columns = {"Location"},
            Primary = true]
        }
    )
in
 Table.Keys(aa)

Atentamente,
Zoe Zhi

Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los demás miembros a encontrarla más rápidamente.

Hola @ richard-powerbi,

Parece cambiar de clave, puede probar el código M debajo y consultar power-query-m-primer-part13-tables-table-think-ii y esta publicación para obtener más detalles.

let

   
  
  Source = #table(
    {"CompanyID", "Name", "Location"}, 
      {
        {1, "ABC Company", "Chicago"}, 
        {2, "ABC Company", "Charlotte"}, 
        {3, "Some Other Company", "Cincinnati"}
      }
    ),
  KeysTagged = Table.AddKey(Source, {"CompanyID"}, true),
  aa=Table.ReplaceKeys(
        KeysTagged,
        {
            [Columns = {"Location"},
            Primary = true]
        }
    )
in
 Table.Keys(aa)

Atentamente,
Zoe Zhi

Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los demás miembros a encontrarla más rápidamente.

richard-powerbi

En respuesta a dax

Otra pregunta, ¿es correcto el código siguiente si quiero que dos columnas actúen como una clave compuesta? Ambas columnas no tienen valores únicos, solo la combinación de ellos es única.

= Table.ReplaceKeys(Source, {[Columns = List.Combine({{"Column1"}, {"Column2"}), Primary = true]})

Más adelante fusionaré estas dos columnas y me gustaría utilizar esto para el rendimiento. ¿El código anterior funciona para esto?

@dax

richard-powerbi

En respuesta a richard-powerbi

¿Alguien sabe?

Smauro

En respuesta a richard-powerbi

Hola @ richard-powerbi,

Podrías simplificarlo como

… {[Columns = {«Column1», «Column2»}, Primary = true]})

y siempre que sea único, debería ver algunas mejoras de rendimiento.

Deja un comentario

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