Fonctions de passage direct (RAWSQL)
Ces fonctions de passage direct RAWSQL peuvent être utilisées pour envoyer 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 ces fonctions de passage direct pour les exécuter.
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 que vous incluez dans les fonctions de passage direct, l’utilisation de noms de champs de Tableau dans votre expression peut entraîner des erreurs. Vous pouvez utiliser une syntaxe de substitution pour insérer l’expression ou le nom de champ correct 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])
Vous devez définir cette agrégation car Tableau n’interprète pas cette expression. Vous pouvez utiliser les fonctions RAWSQLAGG décrites plus bas lorsque vous utilisez des expressions agrégées.
Les fonctions directes RAWSQL ne fonctionnent pas avec les sources de données publiées et les extraits Tableau.
Ces fonctions peuvent avoir des résultats différents dans Tableau Desktop 8.2 par rapport aux versions antérieures de Tableau Desktop. En effet, Tableau utilise désormais ODBC pour les fonctions de passage direct au lieu d’utiliser OLE DB. ODBC tronque lors du renvoi des valeurs réelles entières, alors qu’OLE DB arrondit lors du renvoi des valeurs réelles entières.
Fonctions RAWSQL
Les fonctions RAWSQL suivantes sont disponibles dans Tableau.
RAWSQL_BOOL(“sql_expr”, [arg1], …[argN])
Renvoie un résultat booléen à partir d’une expression SQL donnée. 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.
Exemple
Dans cet exemple, %1 est égal à [Sales] et %2 est égal à [Profit].
RAWSQL_BOOL("%1 > %2", [Sales], [Profit])
RAWSQL_DATE(“sql_expr”, [arg1], …[argN])
Renvoie un résultat de type Date à partir d’une expression SQL donnée. 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.
Exemple
Dans cet exemple, %1 est égal à [Order Date].
RAWSQL_DATE(“%1”, [Order
Date])
RAWSQL_DATETIME(“sql_expr”, [arg1], …[argN])
Renvoie un résultat de type Date et Heure à partir d’une expression SQL donnée. 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. Dans cet exemple, %1 est égal à [Delivery Date].
Exemple
RAWSQL_DATETIME("%1", [Order Date])
RAWSQL_INT(“sql_expr”, [arg1], …[argN])
Renvoie un résultat entier à partir d’une expression SQL donnée. 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. Dans cet exemple, %1 est égal à [Sales].
Exemple
RAWSQL_INT(“500
+ %1”, [Sales])
RAWSQL_REAL(“sql_expr”, [arg1], …[argN])
Renvoie un résultat numérique à partir d’une expression SQL envoyée directement vers la base de données originale. Utilisez %n dans l’expression SQL comme syntaxe de substitution pour les valeurs de la base de données. Dans cet exemple, %1 est égal à [Sales].
Exemple
RAWSQL_REAL(“-123.98 * %1”, [Sales])
RAWSQL_SPATIAL
Renvoie des données spatiales à partir d’une expression SQL envoyée directement vers la base de données originale. Utilisez %n dans l’expression SQL comme syntaxe de substitution pour les valeurs de la base de données.
Exemple
Dans cet exemple, %1 est égal à [Geometry].
RAWSQL_SPATIAL("%1", [Geometry])
RAWSQL_STR(“sql_expr”, [arg1], …[argN])
Renvoie une chaîne à partir d’une expression SQL envoyée directement vers la base de données originale. Utilisez %n dans l’expression SQL comme syntaxe de substitution pour les valeurs de la base de données. Dans cet exemple, %1 est égal à [Customer Name].
Exemple
RAWSQL_STR(“%1”, [Customer Name])
RAWSQLAGG_BOOL(“sql_expr”, [arg1], …[argN])
Renvoie un résultat booléen à partir d’une expression SQL d’agrégation. 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.
Exemple
Dans cet exemple, %1 est égal à [Sales] et %2 est égal à [Profit].
RAWSQLAGG_BOOL(“SUM( %1) >SUM( %2)”, [Sales], [Profit])
RAWSQLAGG_DATE(“sql_expr”, [arg1], …[argN])
Renvoie un résultat de date à partir d’une expression SQL d’agrégation. 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. Dans cet exemple, %1 est égal à [Date Commande].
Exemple
RAWSQLAGG_DATE(“MAX(%1)”,
[Order Date])
RAWSQLAGG_DATETIME(“sql_expr”, [arg1], …[argN])
Renvoie un résultat de date/heure à partir d’une expression SQL d’agrégation donnée. 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. Dans cet exemple, %1 est égal à [Delivery Date].
Exemple
RAWSQLAGG_DATETIME(“MIN(%1)”, [Delivery Date])
RAWSQLAGG_INT(“sql_expr”, [arg1,] …[argN])
Renvoie un résultat de nombre entier à partir d’une expression SQL d’agrégation. 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. Dans cet exemple, %1 est égal à [Sales].
Exemple
RAWSQLAGG_INT(“500
+ SUM(%1)”, [Sales])
RAWSQLAGG_REAL(“sql_expr”, [arg1,] …[argN])
Renvoie un résultat numérique à partir d’une expression SQL d’agrégation donnée 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. Dans cet exemple, %1 est égal à [Sales].
Exemple
RAWSQLAGG_REAL(“SUM( %1)”, [Sales])
RAWSQLAGG_STR(“sql_expr”, [arg1,] …[argN])
Renvoie une chaîne à partir d’une expression SQL d’agrégation envoyée directement vers la base de données originale. Utilisez %n dans l’expression SQL comme syntaxe de substitution pour les valeurs de la base de données. Dans cet exemple, %1 est égal à [Discount].
Exemple
RAWSQLAGG_STR(“AVG(%1)”,
[Discount])