---
schema_version: "1"
id: 28dfa8fd7bd0de7b25db8dcdc33a1dcbe7fe86e257777515b20a545d8b6eebeb
title: Funciones de paso (RAWSQL)
collection: tableau
version: current
locale: es-es
portal_url: https://docs.salesforce.com/tableau/current/es-es/public/desktop/functions_functions_passthrough.md
canonical_url: https://help.tableau.com/current/public/desktop/es-es/functions_functions_passthrough.htm
source_site: help.tableau.com
content_type: documentation
content_hash: 0d61e9a0b34e416944d460f8cfd2ed9afd318126b41da793c4a3026007cc939a
description: Reference for RAWSQL pass-through functions that send SQL directly to the database.
---
[Saltar al contenido principal](#main-content)

# Funciones de paso (RAWSQL)

Estas funciones de paso RAWSQL envían expresiones SQL directamente a la base de datos sin que Tableau las interprete primero. Si tiene funciones de base de datos personalizadas que Tableau no conoce, puede usar las funciones de paso para llamar a funciones personalizadas.

Debido a que Tableau no interpreta la expresión, debe definir la agregación cuando sea necesario. Puede usar la versión `RAWSQLAGG` de una función cuando necesita pasar una expresión agregada.

Es posible que las funciones de paso RAWSQL no funcionen con fuentes de datos federadas (combinadas en diferentes bases de datos) o publicadas.

## Sintaxis de RAWSQL

Las funciones de RAWSQL son de dos tipos: desasociadas y agregadas. Esto se especifica en la primera parte del nombre de la función, _RAWSQL_ o _RAWSQLAGG_. La parte final del nombre de la función es el tipo de salida, como _BOOL,_ _STR_o _INT_. En todas las demás funciones de RAWSQL, el argumento será `"sql_expr", [arg1], ...[arg2]`. Al escribir la función, puede usar una sintaxis de sustitución `%n` para insertar el nombre de campo o la expresión correctos.

### Sintaxis de sustitución %n

Por lo general, la base de datos no comprenderá los nombres de campo que se muestran en Tableau. Debido a que Tableau no interpreta las expresiones SQL de las funciones de paso, el uso de los nombres de campo de Tableau en su expresión puede causar errores. Use `%n` para insertar el nombre de campo o la expresión correctos de un cálculo de Tableau en SQL de paso.

Por ejemplo, imagine que tiene una función que calcula la mediana de un conjunto de valores, puede llamar a esa función en la columna de Tableau \[Sales\] de la siguiente forma:

RAWSQLAGG\_REAL("MEDIAN(%1)", \[Sales\])

- `REALSQLAGG` porque desea especificar la agregación.
- `REAL` porque la salida es numérica y no necesariamente un entero.
- `MEDIAN` es la agregación.
- `%1` es el marcador de posición de `[Sales]`.

## Funciones de RAWSQL

La expresión SQL se pasa directamente a la base de datos subyacente. Use %n en la expresión SQL como una sintaxis de sustitución para los valores de la base de datos.

Las siguientes funciones de RAWSQL están disponibles en Tableau:

### RAWSQL\_BOOL

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 20%;"><col></colgroup><tbody><tr><td>Sintaxis</td><td><code>RAWSQL_BOOL("sql_expr", [arg1], …[argN])</code></td></tr><tr><td>Resultado</td><td>Booleano</td></tr><tr><td>Definición</td><td>Indica un resultado booleano de una expresión de SQL dada.</td></tr><tr><td>Ejemplo</td><td><pre xml:space="preserve">RAWSQL_BOOL("%1 &gt; %2", [Sales], [Profit])</pre><p>En el ejemplo, %1 es igual a [Sales] y %2 es igual a [Profit].</p></td></tr></tbody></table>

### RAWSQLAGG\_BOOL

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 20%;"><col></colgroup><tbody><tr><td>Sintaxis</td><td><code>RAWSQLAGG_BOOL("sql_expr", [arg1], …[argN])</code></td></tr><tr><td>Resultado</td><td>Booleano</td></tr><tr><td>Definición</td><td>Indica un resultado booleano de una expresión de SQL de agregación dada.</td></tr><tr><td>Ejemplo</td><td><pre xml:space="preserve">RAWSQLAGG_BOOL("SUM( %1) &gt;SUM( %2)", [Sales], [Profit]) </pre><p>En el ejemplo, %1 es igual a [Sales] y %2 es igual a [Profit].</p></td></tr></tbody></table>

### RAWSQL\_DATE

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 20%;"><col></colgroup><tbody><tr><td>Sintaxis</td><td><code>RAWSQL_DATE("sql_expr", [arg1], …[argN])</code></td></tr><tr><td>Resultado</td><td>Fecha</td></tr><tr><td>Definición</td><td>Indica un resultado de fecha de una expresión de SQL dada.</td></tr><tr><td>Ejemplo</td><td><pre xml:space="preserve">RAWSQL_DATE("%1", [Order Date])</pre><p>En este ejemplo, %1 es igual a [Order Date].</p></td></tr></tbody></table>

### RAWSQLAGG\_DATE

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 20%;"><col></colgroup><tbody><tr><td>Sintaxis</td><td><code>RAWSQLAGG_DATE("sql_expr", [arg1], …[argN])</code></td></tr><tr><td>Resultado</td><td>Fecha</td></tr><tr><td>Definición</td><td>Indica un resultado de fecha de una expresión de SQL de agregación dada</td></tr><tr><td>Ejemplo</td><td><pre xml:space="preserve">RAWSQLAGG_DATE("MAX(%1)", [Order Date])</pre><p>En este ejemplo, %1 es igual a [Order Date].</p></td></tr></tbody></table>

### RAWSQL\_DATETIME

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 20%;"><col></colgroup><tbody><tr><td>Sintaxis</td><td><code>RAWSQL_DATETIME("sql_expr", [arg1], …[argN])</code></td></tr><tr><td>Resultado</td><td>Datetime</td></tr><tr><td>Definición</td><td>Indica un resultado de fecha y hora de una expresión de SQL dada.</td></tr><tr><td>Ejemplo</td><td><pre xml:space="preserve">RAWSQL_DATETIME("%1", [Order Date])</pre><p>En este ejemplo, %1 es igual a [Order Date].</p></td></tr></tbody></table>

### RAWSQLAGG\_DATETIME

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 20%;"><col></colgroup><tbody><tr><td>Sintaxis</td><td><code>RAWSQLAGG_DATETIME("sql_expr", [arg1], …[argN])</code></td></tr><tr><td>Resultado</td><td>Datetime</td></tr><tr><td>Definición</td><td>Indica un resultado de fecha y hora de una expresión de SQL de agregación dada.</td></tr><tr><td>Ejemplo</td><td><pre xml:space="preserve">RAWSQLAGG_DATETIME("MIN(%1)", [Order Date])</pre><p>En este ejemplo, %1 es igual a [Order Date].</p></td></tr></tbody></table>

### RAWSQL\_INT

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 20%;"><col></colgroup><tbody><tr><td>Sintaxis</td><td><code>RAWSQL_INT("sql_expr", [arg1], …[argN])</code></td></tr><tr><td>Resultado</td><td>Entero</td></tr><tr><td>Definición</td><td>Indica un resultado íntegro de una expresión de SQL dada.</td></tr><tr><td>Ejemplo</td><td><pre xml:space="preserve">RAWSQL_INT("500 + %1", [Sales])</pre><p>En este ejemplo, %1 es igual a [Sales].</p></td></tr></tbody></table>

### RAWSQLAGG\_INT

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 20%;"><col></colgroup><tbody><tr><td>Sintaxis</td><td><code>RAWSQLAGG_INT("sql_expr", [arg1,] …[argN])</code></td></tr><tr><td>Resultado</td><td>Entero</td></tr><tr><td>Definición</td><td>Indica un resultado entero de una expresión de SQL de agregación dada.</td></tr><tr><td>Ejemplo</td><td><pre xml:space="preserve">RAWSQLAGG_INT("500 + SUM(%1)", [Sales])</pre><p>En este ejemplo, %1 es igual a [Sales].</p></td></tr></tbody></table>

### RAWSQL\_REAL

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 20%;"><col></colgroup><tbody><tr><td>Sintaxis</td><td><code>RAWSQL_REAL("sql_expr", [arg1], …[argN])</code></td></tr><tr><td>Resultado</td><td>Numérico</td></tr><tr><td>Definición</td><td>Indica un resultado numérico de una expresión de SQL dada.</td></tr><tr><td>Ejemplo</td><td><pre>RAWSQL_REAL("-123.98 * %1", [Sales])</pre><p>En este ejemplo, %1 es igual a [Sales].</p></td></tr></tbody></table>

### RAWSQLAGG\_REAL

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 20%;"><col></colgroup><tbody><tr><td>Sintaxis</td><td><code>RAWSQLAGG_REAL("sql_expr", [arg1,] …[argN])</code></td></tr><tr><td>Resultado</td><td>Numérico</td></tr><tr><td>Definición</td><td>Indica un resultado numérico de una expresión de SQL de agregación dada.</td></tr><tr><td>Ejemplo</td><td><pre xml:space="preserve">RAWSQLAGG_REAL("SUM( %1)", [Sales])</pre><p>En este ejemplo, %1 es igual a [Sales].</p></td></tr></tbody></table>

### RAWSQL\_SPATIAL

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 20%;"><col></colgroup><tbody><tr><td>Sintaxis</td><td><code>RAWSQL_SPATIAL("sql_expr", [arg1], …[argN])</code></td></tr><tr><td>Resultado</td><td>Espacial</td></tr><tr><td>Definición</td><td>Indica un resultado espacial de una expresión de SQL dada.</td></tr><tr><td>Ejemplo</td><td><pre xml:space="preserve">RAWSQL_SPATIAL("%1", [Geometry])</pre><p>En este ejemplo, %1 es igual a [Geometry].</p></td></tr><tr><td>Nota:</td><td>No hay una versión de <code>RAWSQLAGG</code> para esta función.</td></tr></tbody></table>

### RAWSQL\_STR

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 20%;"><col></colgroup><tbody><tr><td>Sintaxis</td><td><code>RAWSQL_STR("sql_expr", [arg1], …[argN])</code></td></tr><tr><td>Resultado</td><td>Cadena</td></tr><tr><td>Definición</td><td>Indica una cadena de una expresión de SQL dada.</td></tr><tr><td>Ejemplo</td><td><pre xml:space="preserve">RAWSQL_STR("%1", [Customer Name])</pre><p>En este ejemplo, %1 es igual a [Customer Name].</p></td></tr></tbody></table>

### RAWSQLAGG\_STR

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 20%;"><col></colgroup><tbody><tr><td>Sintaxis</td><td><code>RAWSQLAGG_STR("sql_expr", [arg1,] …[argN])</code></td></tr><tr><td>Resultado</td><td>Cadena</td></tr><tr><td>Definición</td><td>Indica una cadena de una expresión de SQL de agregación dada.</td></tr><tr><td>Ejemplo</td><td><pre xml:space="preserve">RAWSQLAGG_STR("AVG(%1)", [Discount])</pre><p>En este ejemplo, %1 es igual a [Discount].</p></td></tr></tbody></table>