List.Distinct
Devolve uma lista de valores com os duplicados removidos.
Syntax
List.Distinct(
list as list,
optional equationCriteria as any
) as list
Remarks
Devolve uma lista que contém todos os valores na lista especificada com duplicados removidos. Se a lista especificada estiver vazia, o resultado é uma lista vazia.
list: a lista a partir da qual são extraídos valores distintos.equationCriteria: (opcional) especifica como a igualdade é determinada ao comparar valores. Este parâmetro pode ser uma função de seletor de chave, uma função de comparação ou uma lista que contenha tanto um seletor de chave como um comparador.
Examples
Example #1
Remover os duplicados da lista {1, 1, 2, 3, 3, 3}.
List.Distinct({1, 1, 2, 3, 3, 3})
Result:
{1, 2, 3}
Example #2
A partir do fim da lista, selecione as frutas que têm um comprimento de texto único.
let
Source = {"Apple", "Banana", "Cherry", "Date", "Fig"},
Result = List.Distinct(List.Reverse(Source), each Text.Length(_))
in
Result
Result:
{"Fig", "Date", "Cherry", "Apple"}
Example #3
A partir do início da lista, selecione as frutas únicas, ignorando maiúsculas e minúsculas.
let
Source = {"apple", "Pear", "aPPle", "banana", "ORANGE", "pear", "Banana", "Cherry"},
Result = List.Distinct(Source, Comparer.OrdinalIgnoreCase)
in
Result
Result:
{"apple", "Pear", "banana", "ORANGE", "Cherry"}
Example #4
Extraia de uma lista de listas as primeiras listas com nomes de países únicos, ignorando maiúsculas e minúsculas. Coloque as listas extraídas nas linhas de uma nova tabela.
let
Source = {
{"USA", #date(2023, 8, 1), 567},
{"canada", #date(2023, 8, 1), 254},
{"Usa", #date(2023, 7, 1), 450},
{"CANADA", #date(2023, 6, 1), 357},
{"Panama", #date(2023, 6, 2), 20},
{"panama", #date(2023, 7, 1), 40}
},
DistinctByCountry = List.Distinct(
Source,
{each _{0}, Comparer.OrdinalIgnoreCase}
),
ToTable = Table.FromRows(DistinctByCountry, {"Country", "Date", "Value"}),
ChangeTypes = Table.TransformColumnTypes(
ToTable, {{"Country", type text}, {"Date", type date}, {"Value", Int64.Type}}
)
in
ChangeTypes
Result:
#table(type table[Country = text, Date = date, Value = Int64.Type],
{
{"USA", #date(2023, 8, 1), 567},
{"canada", #date(2023, 8, 1), 254},
{"Panama", #date(2023, 6, 2), 20}
})
Category
List.Selection