List.Distinct

Sintaks

List.Distinct(list as list, optional equationCriteria as any) as list

Tentang

Mengembalikan daftar yang berisi semua nilai dalam daftar yang ditentukan dengan duplikat dihapus. Jika daftar yang ditentukan kosong, hasilnya adalah daftar kosong.

  • list: Daftar dari mana nilai yang berbeda diekstraksi.
  • equationCriteria: (Opsional) Menentukan bagaimana kesetaraan ditentukan saat membandingkan nilai. Parameter ini dapat menjadi fungsi pemilih kunci, fungsi pembanding, atau daftar yang berisi pemilih kunci dan pembanding.

Contoh 1

Hapus duplikat dari daftar {1, 1, 2, 3, 3, 3}.

Penggunaan

List.Distinct({1, 1, 2, 3, 3, 3})

Hasil

{1, 2, 3}

Contoh 2

Mulai dari akhir daftar, pilih buah-buahan yang memiliki panjang teks unik.

Penggunaan

let
    Source = {"Apple", "Banana", "Cherry", "Date", "Fig"},
    Result = List.Distinct(List.Reverse(Source), each Text.Length(_))
in
    Result

Hasil

{"Fig", "Date", "Cherry", "Apple"}

Contoh 3

Mulai dari awal daftar, pilih buah-buahan unik sambil mengabaikan huruf besar/kecil.

Penggunaan

let
    Source = {"apple", "Pear", "aPPle", "banana", "ORANGE", "pear", "Banana", "Cherry"},
    Result = List.Distinct(Source, Comparer.OrdinalIgnoreCase)
in
    Result

Hasil

{"apple", "Pear", "banana", "ORANGE", "Cherry"}

Contoh 4

Ekstrak dari daftar daftar daftar pertama dengan nama negara unik saat mengabaikan kasus. Tempatkan daftar yang diekstrak di baris tabel baru.

Penggunaan

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

Hasil

#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}
})

Kriteria persamaan