Κοινοποίηση μέσω


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

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