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, STRo 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])REALSQLAGGporque desea especificar la agregación.REALporque la salida es numérica y no necesariamente un entero.MEDIANes la agregación.%1es 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
| Sintaxis | RAWSQL_BOOL("sql_expr", [arg1], …[argN]) |
| Resultado | Booleano |
| Definición | Indica un resultado booleano de una expresión de SQL dada. |
| Ejemplo | RAWSQL_BOOL("%1 > %2", [Sales], [Profit])En el ejemplo, %1 es igual a [Sales] y %2 es igual a [Profit]. |
RAWSQLAGG_BOOL
| Sintaxis | RAWSQLAGG_BOOL("sql_expr", [arg1], …[argN]) |
| Resultado | Booleano |
| Definición | Indica un resultado booleano de una expresión de SQL de agregación dada. |
| Ejemplo | RAWSQLAGG_BOOL("SUM( %1) >SUM( %2)", [Sales], [Profit]) En el ejemplo, %1 es igual a [Sales] y %2 es igual a [Profit]. |
RAWSQL_DATE
| Sintaxis | RAWSQL_DATE("sql_expr", [arg1], …[argN]) |
| Resultado | Fecha |
| Definición | Indica un resultado de fecha de una expresión de SQL dada. |
| Ejemplo | RAWSQL_DATE("%1", [Order Date])En este ejemplo, %1 es igual a [Order Date]. |
RAWSQLAGG_DATE
| Sintaxis | RAWSQLAGG_DATE("sql_expr", [arg1], …[argN]) |
| Resultado | Fecha |
| Definición | Indica un resultado de fecha de una expresión de SQL de agregación dada |
| Ejemplo | RAWSQLAGG_DATE("MAX(%1)", [Order Date])En este ejemplo, %1 es igual a [Order Date]. |
RAWSQL_DATETIME
| Sintaxis | RAWSQL_DATETIME("sql_expr", [arg1], …[argN]) |
| Resultado | Datetime |
| Definición | Indica un resultado de fecha y hora de una expresión de SQL dada. |
| Ejemplo | RAWSQL_DATETIME("%1", [Order Date])En este ejemplo, %1 es igual a [Order Date]. |
RAWSQLAGG_DATETIME
| Sintaxis | RAWSQLAGG_DATETIME("sql_expr", [arg1], …[argN]) |
| Resultado | Datetime |
| Definición | Indica un resultado de fecha y hora de una expresión de SQL de agregación dada. |
| Ejemplo | RAWSQLAGG_DATETIME("MIN(%1)", [Order Date])En este ejemplo, %1 es igual a [Order Date]. |
RAWSQL_INT
| Sintaxis | RAWSQL_INT("sql_expr", [arg1], …[argN]) |
| Resultado | Entero |
| Definición | Indica un resultado íntegro de una expresión de SQL dada. |
| Ejemplo | RAWSQL_INT("500 + %1", [Sales])En este ejemplo, %1 es igual a [Sales]. |
RAWSQLAGG_INT
| Sintaxis | RAWSQLAGG_INT("sql_expr", [arg1,] …[argN]) |
| Resultado | Entero |
| Definición | Indica un resultado entero de una expresión de SQL de agregación dada. |
| Ejemplo | RAWSQLAGG_INT("500 + SUM(%1)", [Sales])En este ejemplo, %1 es igual a [Sales]. |
RAWSQL_REAL
| Sintaxis | RAWSQL_REAL("sql_expr", [arg1], …[argN]) |
| Resultado | Numérico |
| Definición | Indica un resultado numérico de una expresión de SQL dada. |
| Ejemplo | RAWSQL_REAL("-123.98 * %1", [Sales])En este ejemplo, %1 es igual a [Sales]. |
RAWSQLAGG_REAL
| Sintaxis | RAWSQLAGG_REAL("sql_expr", [arg1,] …[argN]) |
| Resultado | Numérico |
| Definición | Indica un resultado numérico de una expresión de SQL de agregación dada. |
| Ejemplo | RAWSQLAGG_REAL("SUM( %1)", [Sales])En este ejemplo, %1 es igual a [Sales]. |
RAWSQL_SPATIAL
| Sintaxis | RAWSQL_SPATIAL("sql_expr", [arg1], …[argN]) |
| Resultado | Espacial |
| Definición | Indica un resultado espacial de una expresión de SQL dada. |
| Ejemplo | RAWSQL_SPATIAL("%1", [Geometry])En este ejemplo, %1 es igual a [Geometry]. |
| Nota: | No hay una versión de RAWSQLAGG para esta función. |
RAWSQL_STR
| Sintaxis | RAWSQL_STR("sql_expr", [arg1], …[argN]) |
| Resultado | Cadena |
| Definición | Indica una cadena de una expresión de SQL dada. |
| Ejemplo | RAWSQL_STR("%1", [Customer Name])En este ejemplo, %1 es igual a [Customer Name]. |
RAWSQLAGG_STR
| Sintaxis | RAWSQLAGG_STR("sql_expr", [arg1,] …[argN]) |
| Resultado | Cadena |
| Definición | Indica una cadena de una expresión de SQL de agregación dada. |
| Ejemplo | RAWSQLAGG_STR("AVG(%1)", [Discount])En este ejemplo, %1 es igual a [Discount]. |
