Indique cuánto tiempo estuvo activo el precio

Un usuario Pregunto ✅

mrmp

Hola a todos,

Tengo una estructura de tabla como la siguiente:

Fecha Cliente Precio
1-1-2021 Automóvil club británico 10
1-2-2021 Automóvil club británico 10
1-3-2021 Automóvil club británico 11
1-4-2021 Automóvil club británico 10
1-5-2021 Automóvil club británico 10
1-6-2021 Automóvil club británico 10

y tengo que crear la siguiente tabla:

Cliente Precio Duración en días
Automóvil club británico 10 2
Automóvil club británico 11 1
Automóvil club británico 10 3

¡Gracias por tu ayuda!

Fowmy

@MrMP

Puede hacerlo en Power Query con un solo paso Agrupar por. Después de agrupar seleccionando Cliente y Precio, agregue este «, GroupKind.Local» al final del grupo por paso.

Puede pegar el código que se proporciona a continuación en una consulta en blanco y verificar.

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMtQ11DUyMDJU0lFydAQShgZKsTogYSPswsaowoZQYRPsqk2xC5thCMcCAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Date = _t, Customer = _t, Price = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Date", type date}, {"Customer", type text}, {"Price", Int64.Type}}),
    #"Grouped Rows" = Table.Group(#"Changed Type", {"Customer", "Price"}, {{"Count", each Table.RowCount(_), Int64.Type}}, GroupKind.Local)
in
    #"Grouped Rows"

Fowmy_0-1619463814883.png

Fowmy

@MrMP

Puede hacerlo en Power Query con un solo paso Agrupar por. Después de agrupar seleccionando Cliente y Precio, agregue este «, GroupKind.Local» al final del grupo por paso.

Puede pegar el código que se proporciona a continuación en una consulta en blanco y verificar.

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMtQ11DUyMDJU0lFydAQShgZKsTogYSPswsaowoZQYRPsqk2xC5thCMcCAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Date = _t, Customer = _t, Price = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Date", type date}, {"Customer", type text}, {"Price", Int64.Type}}),
    #"Grouped Rows" = Table.Group(#"Changed Type", {"Customer", "Price"}, {{"Count", each Table.RowCount(_), Int64.Type}}, GroupKind.Local)
in
    #"Grouped Rows"

Fowmy_0-1619463814883.png

mrmp

En respuesta a Fowmy

Gracias.

¿Existe la posibilidad de que esto sea dinámico o en dax, ya que la cantidad de dimensiones puede variar? A veces es solo un cliente, a veces su cliente y producto.

Deja un comentario

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