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])
  • 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

SintaxisRAWSQL_BOOL("sql_expr", [arg1], …[argN])
ResultadoBooleano
DefiniciónIndica 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

SintaxisRAWSQLAGG_BOOL("sql_expr", [arg1], …[argN])
ResultadoBooleano
DefiniciónIndica 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

SintaxisRAWSQL_DATE("sql_expr", [arg1], …[argN])
ResultadoFecha
DefiniciónIndica 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

SintaxisRAWSQLAGG_DATE("sql_expr", [arg1], …[argN])
ResultadoFecha
DefiniciónIndica 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

SintaxisRAWSQL_DATETIME("sql_expr", [arg1], …[argN])
ResultadoDatetime
DefiniciónIndica 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

SintaxisRAWSQLAGG_DATETIME("sql_expr", [arg1], …[argN])
ResultadoDatetime
DefiniciónIndica 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

SintaxisRAWSQL_INT("sql_expr", [arg1], …[argN])
ResultadoEntero
DefiniciónIndica 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

SintaxisRAWSQLAGG_INT("sql_expr", [arg1,] …[argN])
ResultadoEntero
DefiniciónIndica 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

SintaxisRAWSQL_REAL("sql_expr", [arg1], …[argN])
ResultadoNumérico
DefiniciónIndica 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

SintaxisRAWSQLAGG_REAL("sql_expr", [arg1,] …[argN])
ResultadoNumérico
DefiniciónIndica 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

SintaxisRAWSQL_SPATIAL("sql_expr", [arg1], …[argN])
ResultadoEspacial
DefiniciónIndica 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

SintaxisRAWSQL_STR("sql_expr", [arg1], …[argN])
ResultadoCadena
DefiniciónIndica 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

SintaxisRAWSQLAGG_STR("sql_expr", [arg1,] …[argN])
ResultadoCadena
DefiniciónIndica 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].

¡Gracias por sus comentarios!Sus comentarios se han enviado correctamente. ¡Gracias!