La función Table.Contains evalúa si el registro indicado aparece incluido en una fila de una tabla, devolviendo el valor lógico True en caso positivo y False en caso contrario.
Table.Contains(
table as table,
row as record,
optional equationCriteria as any
) as logical
- table: tabla a evaluar
- row: registro conteniendo los campos cuya existencia en la tabla se desea comprobar
- equationCriteria: (opcional) parámetro no documentado. Supuestamente controla el método de comparación de filas en la tabla.
En el caso de que se incluya más de un campo en el parámetro row, todos los valores deberán coincidir con los de alguna fila de la tabla para que la función devuelva el valor lógico True.
En este ejemplo partimos de una tabla conteniendo tres campos ("id", "name" y "country") y queremos comprobar si alguna de las filas contiene el valor "Alfonso" en el campo "name":
let
table = Table.FromRecords(
{
[id = 1, name = "John", country = "Uruguay"],
[id = 2, name = "Alfonso", country = "Chile"],
[id = 3, name = "Anacelia", country = "Argentina"],
[id = 2, name = "Luis", country = "España"]
}
)
in
Table.Contains(
table,
[name = "Alfonso"]
)
TRUE
En este segundo ejemplo buscamos en los tres campos de la misma tabla, pero solo dos de ellos coinciden con los de una fila, por lo que la función Table.Contains devuelve False:
let
table = Table.FromRecords(
{
[id = 1, name = "John", country = "Uruguay"],
[id = 2, name = "Alfonso", country = "Chile"],
[id = 3, name = "Anacelia", country = "Argentina"],
[id = 2, name = "Luis", country = "España"]
}
)
in
Table.Contains(
table,
[id = 2, name = "Alfonso", country = "Colombia"]
)
FALSE