Fonctions de passage direct (RAWSQL)

Ces fonctions de passage direct RAWSQL envoient des expressions SQL directement vers la base de données sans qu’elles ne soient interprétées par Tableau. Si vous possédez des fonctions de base de données personnalisées dont Tableau ne connaît pas l’existence, vous pouvez utiliser des fonctions de passage direct pour les exécuter.

Vous devez définir cette agrégation lorsque nécessaire car Tableau n’interprète pas cette expression. Vous pouvez utiliser la version RAWSQLAGG d’une fonction lorsque vous avez besoin de transmettre une expression agrégée.

Les fonctions de passage direct RAWSQL peuvent ne pas fonctionner avec des sources de données fédérées (combinées à partir de différentes bases de données) ou publiées.

Syntaxe RAWSQL

Les fonctions RAWSQL sont de deux types : désagrégées et agrégées. Ceci est spécifié dans la première partie du nom de la fonction, RAWSQL ou RAWSQLAGG. La dernière partie du nom de la fonction est le type de sortie, tel que BOOL, STR ou INT. Dans toutes les fonctions RAWSQL, l’argument est "sql_expr", [arg1], ...[arg2]. Lors de l’écriture de la fonction, vous pouvez utiliser une syntaxe de substitution %n pour insérer le nom de champ ou l’expression approprié.

Syntaxe de substitution %n

Votre base de données ne comprend généralement pas les noms de champs affichés dans Tableau. Dans la mesure où Tableau n’interprète pas les expressions SQL des fonctions de passage direct, l’utilisation de noms de champs de Tableau dans votre expression peut entraîner des erreurs. Vous pouvez utiliser %n pour insérer l’expression ou le nom de champ approprié d’un calcul Tableau dans la requête SQL de passage direct.

Par exemple, imaginez que vous disposez d’une fonction calculant la valeur médiane d’un ensemble de valeurs, vous pouvez l’appeler à partir de la colonne [Sales] de Tableau, comme suit :

RAWSQLAGG_REAL("MEDIAN(%1)", [Sales])
  • REALSQLAGG pour spécifier l’agrégation.
  • REAL, car la sortie est numérique, mais pas nécessairement un entier.
  • MEDIAN représente l’agrégation en elle-même.
  • %1 est l’espace réservé pour [Ventes].

Fonctions RAWSQL

L’expression SQL est envoyée directement vers la base de données sous-jacente. Utilisez %n dans l’expression SQL comme syntaxe de substitution pour les valeurs de la base de données.

Les fonctions RAWSQL suivantes sont disponibles dans Tableau :

RAWSQL_BOOL

SyntaxeRAWSQL_BOOL("sql_expr", [arg1], …[argN])
SortieBooléen
DéfinitionRenvoie un résultat booléen à partir d’une expression SQL donnée.
Exemple
RAWSQL_BOOL("%1 > %2", [Sales], [Profit])

Dans cet exemple, %1 est égal à [Ventes] et %2 est égal à [Profit].

RAWSQLAGG_BOOL

SyntaxeRAWSQLAGG_BOOL("sql_expr", [arg1], …[argN])
SortieBooléen
DéfinitionRenvoie un résultat booléen à partir d’une expression SQL d’agrégation.
Exemple
RAWSQLAGG_BOOL("SUM( %1) >SUM( %2)", [Sales], [Profit]) 

Dans cet exemple, %1 est égal à [Ventes] et %2 est égal à [Profit].

RAWSQL_DATE

SyntaxeRAWSQL_DATE("sql_expr", [arg1], …[argN])
SortieDate
DéfinitionRenvoie un résultat de type Date à partir d’une expression SQL donnée.
Exemple
RAWSQL_DATE("%1", [Order Date])

Dans cet exemple, %1 est égal à [Date de commande].

RAWSQLAGG_DATE

SyntaxeRAWSQLAGG_DATE("sql_expr", [arg1], …[argN])
SortieDate
DéfinitionRenvoie une date à partir d’une expression SQL d’agrégation
Exemple
RAWSQLAGG_DATE("MAX(%1)", [Order Date])

Dans cet exemple, %1 est égal à [Date de commande].

RAWSQL_DATETIME

SyntaxeRAWSQL_DATETIME("sql_expr", [arg1], …[argN])
SortieDate et heure
DéfinitionRenvoie une valeur date et heure à partir d’une expression SQL donnée.
Exemple
RAWSQL_DATETIME("%1", [Order Date])

Dans cet exemple, %1 est égal à [Date de commande].

RAWSQLAGG_DATETIME

SyntaxeRAWSQLAGG_DATETIME("sql_expr", [arg1], …[argN])
SortieDate et heure
DéfinitionRenvoie une valeur date et heure à partir d’une expression SQL d’agrégation.
Exemple
RAWSQLAGG_DATETIME("MIN(%1)", [Order Date])

Dans cet exemple, %1 est égal à [Date de commande].

RAWSQL_INT

SyntaxeRAWSQL_INT("sql_expr", [arg1], …[argN])
SortieEntier
DéfinitionRenvoie un résultat entier à partir d’une expression SQL donnée.
Exemple
RAWSQL_INT("500 + %1", [Sales])

Dans cet exemple, %1 est égal à [Ventes].

RAWSQLAGG_INT

SyntaxeRAWSQLAGG_INT("sql_expr", [arg1,] …[argN])
SortieEntier
DéfinitionRenvoie un résultat de nombre entier à partir d’une expression SQL d’agrégation.
Exemple
RAWSQLAGG_INT("500 + SUM(%1)", [Sales])

Dans cet exemple, %1 est égal à [Ventes].

RAWSQL_REAL

SyntaxeRAWSQL_REAL("sql_expr", [arg1], …[argN])
SortieNumérique
DéfinitionRenvoie un résultat numérique à partir d’une expression SQL donnée.
Exemple
RAWSQL_REAL("-123.98 * %1", [Sales])

Dans cet exemple, %1 est égal à [Ventes].

RAWSQLAGG_REAL

SyntaxeRAWSQLAGG_REAL("sql_expr", [arg1,] …[argN])
SortieNumérique
DéfinitionRenvoie un résultat numérique à partir d’une expression SQL d’agrégation.
Exemple
RAWSQLAGG_REAL("SUM( %1)", [Sales])

Dans cet exemple, %1 est égal à [Ventes].

RAWSQL_SPATIAL

SyntaxeRAWSQL_SPATIAL("sql_expr", [arg1], …[argN])
SortieDonnées spatiales
DéfinitionRenvoie des données spatiales à partir d’une expression SQL donnée.
Exemple
RAWSQL_SPATIAL("%1", [Geometry])

Dans cet exemple, %1 est égal à [Geometry].

RemarqueIl n’y a pas de version RAWSQLAGG pour cette fonction.

RAWSQL_STR

SyntaxeRAWSQL_STR("sql_expr", [arg1], …[argN])
SortieChaîne
DéfinitionRenvoie une chaîne à partir d’une expression SQL donnée.
Exemple
RAWSQL_STR("%1", [Customer Name])

Dans cet exemple, %1 est égal à [Customer Name].

RAWSQLAGG_STR

SyntaxeRAWSQLAGG_STR("sql_expr", [arg1,] …[argN])
SortieChaîne
DéfinitionRenvoie une chaîne à partir d’une expression SQL d’agrégation.
Exemple
RAWSQLAGG_STR("AVG(%1)", [Discount])

Dans cet exemple, %1 est égal à [Discount].

Merci de vos commentaires!Votre commentaire s été envoyé avec succès. Merci!