List.Distinct

Σύνταξη

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

Πληροφορίες

Επιστρέφει μια νέα λίστα που περιέχει όλες τις τιμές στην αρχική λίστα, αλλά έχοντας καταργήσει τις διπλότυπες τιμές. Εάν η αρχική λίστα είναι κενή, το αποτέλεσμα είναι μια κενή λίστα.

  • list: Η αρχική λίστα από την οποία εξάγονται οι διακριτές τιμές.
  • equationCriteria: (Προαιρετικό) Καθορίζει τον τρόπο καθορισμού της ισότητας κατά τη σύγκριση τιμών. Αυτή η παράμετρος μπορεί να είναι μια συνάρτηση επιλογής πλήκτρων, μια συνάρτηση σύγκρισης ή μια λίστα που περιέχει τόσο έναν επιλογέα πλήκτρων όσο και έναν συγκριτή.

Παράδειγμα 1

Καταργήστε τις διπλότυπες τιμές από τη λίστα {1, 1, 2, 3, 3, 3}.

Χρήση

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

Έξοδος

{1, 2, 3}

Παράδειγμα 2

Ξεκινώντας από το τέλος της λίστας, επιλέξτε τα φρούτα που έχουν μοναδικό μήκος κειμένου.

Χρήση

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

Έξοδος

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

Παράδειγμα 3

Ξεκινώντας από την αρχή της λίστας, επιλέξτε τα μοναδικά φρούτα αγνοώντας την περίπτωση.

Χρήση

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

Έξοδος

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

Παράδειγμα 4

Εξαγάγετε από μια λίστα λιστών τις πρώτες λίστες με μοναδικά ονόματα χωρών αγνοώντας πεζά-κεφαλαία. Τοποθετήστε τις λίστες που έχουν εξαχθεί στις γραμμές ενός νέου πίνακα.

Χρήση

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

Έξοδος

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

Κριτήρια εξίσωσης