Sdílet prostřednictvím


List.Select

Syntax

List.Select(list as list, selection as function) as list

Asi

Vrátí hodnoty ze zadaného seznamu, které odpovídají podmínce výběru.

  • list: Seznam k prozkoumání.
  • selection: Funkce, která určuje hodnoty, které chcete vybrat.

Příklad 1

Najděte hodnoty v seznamu {1, -3, 4, 9, -2}, které jsou větší než 0.

využití

List.Select({1, -3, 4, 9, -2}, each _ > 0)

Výstup

{1, 4, 9}

Příklad 2

Vyberte data ze seznamu, který spadá do soboty nebo neděle.

využití

let
    dates = {
        #date(2025, 10, 20),  // Monday
        #date(2025, 10, 21),  // Tuesday
        #date(2025, 10, 25),  // Saturday
        #date(2025, 10, 26),  // Sunday
        #date(2025, 10, 27)   // Monday
    },
    weekendDates = List.Select(
        dates,
        each Date.DayOfWeek(_, Day.Monday) >= 5
    )
in
    weekendDates

Výstup

{
    #date(2025, 10, 25),
    #date(2025, 10, 26)
}

Příklad 3

Zobrazí tabulku aktivních zákazníků s celkovými nákupy nad 100 USD.

využití

let
    customers = {
        [Name = "Alice", Status = "Active", Purchases = 150],
        [Name = "Bob", Status = "Inactive", Purchases = 200],
        [Name = "Carol", Status = "Active", Purchases = 90],
        [Name = "Dave", Status = "Active", Purchases = 120]
    },
    highValueActiveCustomers = List.Select(
        customers,
        each [Status] = "Active" and [Purchases] > 100
    ),
    resultTable = Table.FromRecords(
        highValueActiveCustomers,
        type table [Name = text, Status = text, Purchases = number]
    )
in
    resultTable

Výstup

#table(type table[Name = text, Status = text, Purchases = number],
{
    {"Alice", "Active", 150},
    {"Dave", "Active", 120}
})