# LookUp Función de script

LookUp() consulta una tabla ya cargada y devuelve el valor de field\_name correspondiente a la primera aparición del valor match\_field\_value en el campo match\_field\_name. La tabla puede ser la actual u otra cargada anteriormente.

Sintaxis:

LookUp(field\_name, match\_field\_name, match\_field\_value [, table\_name])

Tipo de datos que devuelve: dual

Argumentos:

Argumentos

| Argumento | Descripción |
| --- | --- |
| field\_name | Nombre del campo para el que se requiere el valor devuelto. El valor de entrada debe suministrarse como una cadena (por ejemplo, literales entrecomillados). |
| match\_field\_name | Nombre del campo que buscar en match\_field\_value. El valor de entrada debe suministrarse como una cadena (por ejemplo, literales entrecomillados). |
| match\_field\_value | Valor que buscar en el campo match\_field\_name. |
| table\_name | Nombre de la tabla en la que buscar el valor. El valor de entrada debe suministrarse como una cadena (por ejemplo, literales entrecomillados).<br><br>Si se omite table\_name, se presupone la tabla actual. |

Nota informativaLos argumentos sin comillas se refieren a la tabla actual. Para referirse a otras tablas, encierre un argumento entre comillas simples.

Limitaciones:

El orden de búsqueda es el orden de carga, a menos que la tabla sea el resultado de operaciones complejas, como uniones entre diversas tablas, en cuyo caso el orden no está bien definido. Tanto field\_name como match\_field\_name deben ser campos en la misma tabla, especificados por table\_name.

Si no encuentra ningún resultado, devuelve NULL.

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/InterRecordFunctions/LookUp.htm)

#### Ejemplo

### Script de carga

Cargue los datos siguientes como una carga inline en el editor de carga de datos para crear el ejemplo a continuación.

```
ProductList:
Load * Inline [
ProductID|Product|Category|Price
1|AA|1|1
2|BB|1|3
3|CC|2|8
4|DD|3|2
] (delimiter is '|');
 
OrderData:
Load *, Lookup('Category', 'ProductID', ProductID, 'ProductList') as CategoryID
Inline [
InvoiceID|CustomerID|ProductID|Units
1|Astrida|1|8
1|Astrida|2|6
2|Betacab|3|10
3|Divadip|3|5
4|Divadip|4|10
] (delimiter is '|');
 
Drop Table ProductList;
```

Para más información sobre el uso de cargas inline, vea [Usar cargas inline para cargar datos](https://help.qlik.com/es-ES/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/inline-loads-qs.htm).

### Crear una visualización

Cree una visualización de tabla en una hoja de Qlik Sense. Agregue los campos ProductID, InvoiceID, CustomerID, Units y CategoryID a la tabla.

### Resultado

Tabla resultante

| ProductID | InvoiceID | CustomerID | Units | CategoryID |
| --- | --- | --- | --- | --- |
| 1 | 1 | Astrida | 8 | 1 |
| 2 | 1 | Astrida | 6 | 1 |
| 3 | 2 | Betacab | 10 | 2 |
| 3 | 3 | Divadip | 5 | 2 |
| 4 | 4 | Divadip | 10 | 3 |

### Explicación

Los datos de muestra utilizan la función Lookup() de la siguiente forma:

`Lookup('Category', 'ProductID', ProductID, 'ProductList')`

La tabla ProductList se carga primero.

La función Lookup() se utiliza para construir la tabla OrderData. Especifica el tercer argumento como ProductID. Este es el campo para el que se buscará el valor en el segundo argumento 'ProductID' en ProductList, como se indica por las comillas simples que lo incluyen.

La función devuelve el valor de 'Category' (en la tabla ProductList), cargado como CategoryID.

La sentencia drop elimina la tabla ProductList del modelo de datos, porque no es necesaria, lo que nos deja la tabla OrderData resultante:

Nota informativaLa función Lookup() es flexible y puede acceder a cualquier tabla cargada previamente. No obstante, es lento si se compara con la función Applymap().

## Más información

* [ApplyMap Función de script](https://help.qlik.com/es-ES/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/MappingFunctions/ApplyMap.htm)