Condividi tramite


List.Select

Sintassi

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

Informazioni

Restituisce i valori dell'elenco specificato che corrispondono alla condizione di selezione.

  • list: L'elenco da esaminare.
  • selection: funzione che determina i valori da selezionare.

Esempio 1

Trovare i valori nell'elenco {1, -3, 4, 9, -2} che sono maggiori di 0.

Utilizzo

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

Output

{1, 4, 9}

Esempio 2

Selezionare le date dall'elenco che rientrano sabato o domenica.

Utilizzo

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

Output

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

Esempio 3

Visualizzare una tabella di clienti attivi con totali di acquisto superiori a $ 100.

Utilizzo

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

Output

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