Compartir vía


List.Select

Sintaxis

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

Acerca de

Devuelve los valores de la lista especificada que coinciden con la condición de selección.

  • list: La lista que debe examinarse.
  • selection: función que determina los valores que se van a seleccionar.

Ejemplo 1

Busque los valores de la lista {1, -3, 4, 9, -2} mayores que 0.

Uso

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

Salida

{1, 4, 9}

Ejemplo 2

Seleccione las fechas de la lista que caigan en sábado o domingo.

Uso

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

Salida

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

Ejemplo 3

Muestra una tabla de clientes activos con totales de compra superiores a 100 USD.

Uso

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

Salida

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