Dans une condition de filtrage, il faut lier deux valeurs grâce à un opérateur.
Voici une liste descriptive des opérateurs disponibles :
Opérateur |
Intérêt |
Exemple |
---|---|---|
Egal à |
Retrouver un résultat rigoureusement identique à ce qui est entré dans la seconde colonne Valeur. |
Nom (@lastName) égal à 'Martin'. Ici ne seront retournés que les destinataires dont le nom est 'Martin', avec les seuls caractères indiqués. |
Supérieur à |
Obtenir un résultat supérieur à la valeur indiquée. |
Age (@age) supérieur à '50' pour retourner toutes les valeurs supérieures à '50', donc '51', '52', etc. |
Inférieur à |
Obtenir un résultat inférieur à la valeur indiquée. |
Date de création (@created) strictement plus tôt que 'DaysAgo(100)' afin de retrouver tous les destinataires créés dans la base il y a moins de 100 jours. |
Supérieur ou égal à |
Obtenir un résultat rigoureusement égal ou supérieur à la valeur renseignée. |
Age (@age) supérieur ou égal à '30', afin de retrouver les destinataires dont l'âge est de 30 ans, 31 ans, etc. |
Inférieur ou égal à |
Obtenir un résultat rigoureusement égal ou inférieur à la valeur renseignée. |
Age (@age) inférieur ou égal à '60' pour retrouver les destinataires dont l'âge est de 60 ans ou moins. |
Différent de |
Le résultat retourné ne doit pas être identique à la valeur renseignée. |
Langue (@language) différent de 'Anglais'. |
Commence par |
Obtenir des résultats commençant par la valeur indiquée. |
N° de compte (@account) commence par '32010'. |
Ne commence pas par |
Obtenir des résultats qui ne commencent pas par la valeur renseignée |
N° de compte (@account) ne commence pas par '20'. |
Contient |
Obtenir un résultat comportant au moins la valeur qui est renseignée. |
Domaine de l'email (@domain) contient 'mail'. Ici, tous les noms de domaine comportant la valeur 'mail' seront retournés en résultat. Par conséquent, le nom de domaine 'gmail.com' fera partie des résultats retournés. |
Ne contient pas |
Ne pas obtenir de résultats contenant au moins la valeur renseignée. |
Domaine de l'email (@domain) ne contient pas 'vo'. Dans ce cas, les noms de domaine contenant la valeur 'vo' ne seront pas proposés dans les résultats. Ainsi, le nom de domaine 'voila.fr' ne sera pas proposé dans les résultats. |
Comme |
Comme est quasiment identique à l'opérateur Contient. Il vous permet d’insérer un caractère joker % dans la valeur. |
Nom (@lastName) comme 'Mart%n'. Ici, le caractère de substitution sert de "joker" afin de retrouver le nom "Martin" dans le cas très hypothétique où l'opérateur aurait oublié quelle est la lettre située entre les lettre 't' et 'n' (un 'i' en l'occurrence...). |
Pas comme |
Similaire à Comme. Permet de ne pas obtenir la valeur renseignée. La valeur renseignée doit ici aussi comporter le caractère joker %. |
Nom (@lastName) pas comme 'Smi%h'. Ici, les destinataires répondant au nom de 'Smi%h' ne seront pas retournés en résultat. |
Est vide |
Dans ce cas, le résultat recherché correspond à une valeur vide dans la seconde colonne Valeur. |
Portable (@mobilePhone) est vide afin de retrouver tous les destinataires ne disposant pas d'un numéro de téléphone mobile. |
N'est pas vide |
Est contraire à l'opérateur Est vide. Il n'est pas non plus nécessaire d'entrer de données dans la seconde colonne Valeur. |
Email (@email) n'est pas vide. |
Est compris dans |
Obtenir les résultats compris dans les valeurs indiquées. Ces valeurs doivent toujours être séparées par une virgule. |
Code Postal (location/@zipCode) est compris dans '75014, 75015'. Si des destinataires sont recherchés, la requête retrouvera ceux dont le code postal égal à 75014 et 75015. |
N'est pas compris dans |
Le principe est le même qu'avec l'opérateur Est compris dans. Ici, il s'agit d'exclure les destinataires en fonction des valeurs indiquées. |
Code Postal (location/@zipCode) n'est pas compris dans '75013, 75015,75016,75019'. Contrairement à l'exemple précédent, les destinataires avec un code postal égal à 75013, 75015, 75016 et 75019 ne seront pas retournés. |
Dans les requêtes utilisant plus d'un critère de filtrage, vous devez définir les liens entre conditions. Il y a trois liens possibles :
Cliquez sur le Et (proposé par défaut) et faites votre choix dans la liste déroulante.
Et : ajoute une condition en plus de la précédente et permet de surfiltrer.
Ou : permet de prendre en compte au moins un résultat par rapport aux conditions définies.
L'exemple ci-dessous permet de retrouver des destinataires dont le domaine d'email contient "voila.fr" OU dont le code postal commence par le chiffre "49".
Sauf : si vous avez deux filtres et que le premier permet de ne pas obtenir de valeur, une relation de ce type crée une exception.
Dans l'exemple ci-dessous, on recherche des destinataires dont le domaine d'email contient "voila.fr" SAUF si le nom de famille des destinataires correspond à la valeur "Smith".
Cet autre exemple montre un filtre permettant d'afficher : les destinataires de langue espagnole OU les femmes dont le numéro de téléphone mobile est renseigné OU les destinataires qui n'ont pas renseigné leur numéro de compte et dont le nom de société commence "N".
Cette section explique comment hiérarchiser les conditions. Ceci est possible grâce aux flèches bleues situées dans la barre d'outils.
La flèche pointant vers la droite permet d'ajouter un niveau de parenthèses au filtrage.
La flèche pointant vers la gauche permet de supprimer un niveau de parenthèses.
Les flèches pointant vers le haut et vers le bas permettent de déplacer une condition. Cela modifie l'ordre d'exécution des filtres.
L'exemple qui suit montre le comportement de la flèche servant à supprimer le niveau de parenthèse. La condition de filtrage de base est : Ville égale à Saumur OU genre égal à masculin et numéro de téléphone mobile non renseigné OU numéro de compte commence par "95" et dont nom de société commence par "A".
Pointez votre curseur sur la condition de filtrage Gender (@gender) égal à Masculin puis cliquez sur la flèche Supprimer un niveau de parenthèses.
La condition Gender (@gender) égal à Masculin vient d'être extraite de sa parenthèse. Elle se situe désormais au même niveau que la condition "Ville égale à Saumur". Ces deux conditions sont liées par un Et.
Les champs disponibles varient d'une table à l'autre. Tous les champs sont stockés dans un nœud principal, nommé Elément principal. Les champs de l'exemple ci-dessous sont ceux de la table des destinataires (nms:recipient). Les champs sont toujours ordonnés alphabétiquement.
Le détail du champ sélectionné est visible au bas de la fenêtre. Par exemple, le champ Domaine de l'email est un Champ calculé SQL. Le reste de son appellation est (@domain).
Utilisez la section Rechercher pour retrouver un champ disponible.
Double-cliquez sur un champ disponible pour l'ajouter aux colonnes de sortie. En fin de requête, chaque champ sélectionné correspond à une colonne dans la fenêtre Prévisualisation des données.
Les champs avancés ne sont pas affichés par défaut. Cliquez sur Afficher les champs avancés, en bas à droite des champs disponibles pour les afficher. Cette fonction affiche le nom complet des champs.
Par exemple, dans la table des destinataires, les champs avancés sont Booléen 1, Booléen 2, Booléen 3, Clé étrangère du lien "Dossier", etc.
L'exemple ci-dessous montre les champs avancés de la table des destinataires.
Les différentes catégories de champs :
Icône |
Description |
Exemples |
---|---|---|
![]() |
Champ simple |
Civilité, email, genre, etc. |
![]() |
Clé primaire. Ce champ SQL sert à identifier de manière unique un enregistrement dans une table. |
L'identifiant d'un destinataire est une clé primaire et un identifiant est unique par définition. |
![]() |
Clé étrangère. Sert de lien vers une autre table. |
Clé étrangère du destinataire, clé étrangère du service, etc. |
![]() |
Champ calculé. Ce type de champ est calculé à la demande, à partir de valeurs stockées en base. |
Âge, domaine d'email, etc. |
![]() |
Champ contenant des textes longs. |
Commentaire, Adresse complète, etc. |
![]() |
Champ SQL indexé. |
Nom complet, Code ISO, etc. |
Liens vers une table et éléments de collection :
Icône |
Description |
Exemple |
---|---|---|
![]() |
Liens vers une table en particulier. Ils correspondent à des associations de type 1-1. A une occurrence de la table source peut correspondre au plus une occurrence de la table cible. Un seul et même destinataire sera associé à un pays par exemple. |
Dossier, Etat, Pays, etc. |
![]() |
Eléments de collection sur une table spécifique. Ils correspondent à des associations de type 1-N. A une occurrence de la table source peuvent correspondre plusieurs occurrences de la table cible, mais à une occurrence de la table cible peut correspondre au plus une seule occurrence de la table source. Par exemple, un seul destinataire peut être inscrit à 'n' lettres d'abonnements. |
Abonnements, listes, logs d'exclusion, etc. |
Au besoin, ajoutez une colonne lors du formatage des données. Un champ calculé rajoute une colonne dans la fenêtre de prévisualisation des données. Cliquez sur Ajouter un champ calculé.
Quatre types de champ calculé sont proposés :
Chaîne fixe : pour ajouter une chaîne de caractères.
Chaîne avec fusion JavaScript : la valeur du champ calculé combine une chaîne de caractères à des directives JavaScript.
Expression JavaScript : la valeur du champ calculé est le résultat de l'évaluation d'une fonction JavaScript. La valeur retournée peut être typée (nombre, date, etc.).
Enumérations. Ce type de champ permet d'utiliser/transformer le contenu d'une des colonnes de sortie dans une nouvelle colonne.
On peut utiliser la valeur source d'une colonne et lui donner une valeur de destination. Cette valeur de destination sera affichée dans la nouvelle colonne de sortie.
Un exemple d'ajout de champ calculé de type Enumérations est disponible. Reportez-vous à cette section.
Le champ calculé de type Enumérations peut comporter quatre conditions :
Cliquez sur la loupe Détail du champ calculé pour visualiser le champ inséré en détail.
Pour retirer le champ, cliquez sur la croix rouge Enlever le champ calculé.
L'outil d'édition d'une expression sert à calculer des agrégats, générer une fonction ou éditer une formule à partir d'une expression.
L'exemple ci-dessous présente comment faire un comptage sur une clé primaire.
Les étapes sont les suivantes :
Cliquez sur Ajouter dans la fenêtre Données à extraire. Dans la fenêtre Type de formule, sélectionnez un type de formule pour renseigner votre expression.
Plusieurs types de formules sont disponibles : Champ simple, Agrégat, Expression.
Sélectionnez Traitement sur une fonction d'agrégat puis Comptage. Cliquez sur Suivant.
Le calcul de la clé primaire est effectué.
Voici le détail des choix de la fenêtre Types de formules :
Champ simple permet de revenir à la fenêtre Champ à sélectionner.
Agrégat (Traitement sur une fonction d'agrégat). Voici des exemples d'utilisation des agrégats :
Comptage permet d'effectuer un comptage de clé primaire.
Somme sert à totaliser tous les achats d'un prospect sur une année.
Valeur maximum pour retrouver des clients qui ont acheté un maximum de "n" produits.
Valeur minimum permet d'obtenir parmi des clients, ceux qui ont souscrit à une offre le plus récemment.
Moyenne. Cette fonction permet de calculer l'âge moyen des destinataires.
La case Distinct permet de récupérer les valeurs uniques et non nulles d'une colonne. On peut ainsi récupérer les logs de tracking d'un destinataire qui seront ramenés à la valeur 1 car il s'agit d'un seul destinataire.
Expression ouvre la fenêtre Edition de l'expression. Par exemple, une expression pourra détecter les numéros de téléphone de plus de 10 chiffres, synonymes de possibles erreurs de saisie.
Pour une liste complète des fonctions disponibles, voir la section Liste des fonctions.
Dans le cas où une formule de type Expression est choisie, vous vous retrouvez dans la fenêtre édition de l'expression. Différentes catégories de fonctions sont à associer aux champs disponibles : Agrégats, Chaine, Date, Numérique, Monétaire, Géomarketing, Autres et Fonctions Windows.
L'éditeur d'expression se présente comme suit :
Il permet de sélectionner des champs dans les tables de la base de données et de leur adjoindre des fonctions avancées. Les fonctions disponibles sont les suivantes :
Agrégats
Nom |
Description |
Syntaxe |
Avg |
Renvoie la moyenne d'une colonne de type numérique |
Avg(<valeur>) |
Count |
Compte les valeurs non nulles d'une colonne |
Count(<valeur>) |
CountAll |
Compte les valeurs retournées (tous champs confondus) |
CountAll() |
Countdistinct |
Compte les valeurs distinctes non nulles d'une colonne |
Countdistinct(<valeur>) |
Max |
Renvoie la valeur maximum d'une colonne de type nombre, chaîne ou date |
Max(<valeur>) |
Min |
Renvoie la valeur minimum d'une colonne de type nombre, chaîne ou date |
Min(<valeur>) |
StdDev |
Renvoie l'écart type d'une colonne de type nombre |
StdDev(<valeur>) |
Sum |
Renvoie la somme des valeurs d'une colonne de type nombre, chaîne ou date |
Sum(<valeur>) |
Chaîne
Nom |
Description |
Syntaxe |
AllNonNull2 |
Indique si tous les paramètres sont non nuls et non vides |
AllNonNull2(<chaîne>, <chaîne>) |
AllNonNull3 |
Indique si tous les paramètres sont non nuls et non vides |
AllNonNull3(<chaîne>, <chaîne>, <chaîne>) |
Ascii |
Renvoie la valeur ascii du premier caractère de la chaîne. |
Ascii(<chaîne>) |
Char |
Renvoie le caractère de code ascii n |
Char(<nombre>) |
Charindex |
Retourne la position de la chaîne 2 dans la chaîne 1. |
Charindex(<chaîne>, <chaîne>) |
GetLine |
Renvoie la nième (de 1 à n) ligne de la chaîne |
GetLine(<chaîne>) |
IfEquals |
Renvoie le troisième paramètre si les deux premiers paramètres sont égaux sinon renvoie le dernier paramètre |
IfEquals(<chaîne>, <chaîne>, <chaîne>, <chaîne>) |
IsMemoNull |
Indique si le memo passé en paramètre est nul |
IsMemoNull(<memo>) |
JuxtWords |
Concatène les trois chaînes passées en paramètres. Ajoute des espaces entre les chaînes si nécessaire. |
JuxtWords(<chaîne>, <chaîne>) |
JuxtWords3 |
Concatène les trois chaînes passées en paramètres. Ajoute des espaces entre les chaînes si nécessaire |
JuxtWords3(<chaîne>, <chaîne>, <chaîne>) |
LPad |
Renvoie la chaîne complétée à gauche |
LPad(<chaîne>, <nombre>, <caractère>) |
Left |
Renvoie les n premiers caractères de la chaîne |
Left(<chaîne>, <nombre>) |
Length |
Renvoie la longueur de la chaîne |
Length(<chaîne>) |
Lower |
Renvoie la chaîne en minuscules |
Lower(<chaîne>) |
Ltrim |
Ote les espaces à gauche de la chaîne |
Ltrim(<chaîne>) |
Md5Digest |
Renvoie une représentation hexadécimale de la clé MD5 d'une chaîne |
Md5Digest(<chaîne>) |
MemoContains |
Indique si le mémo contient la chaîne passée en paramètre |
MemoContains(<memo>, <chaîne>) |
RPad |
Renvoie la chaîne complétée à droite |
RPad(<chaîne>, <nombre>, <caractère>) |
Right |
Renvoie les n derniers caractères de la chaîne |
Right(<chaîne>) |
Rtrim |
Ote les espaces à droite de la chaîne |
Rtrim(<chaîne>) |
Smart |
Renvoie la chaîne avec la première lettre de chaque mot en majuscule |
Smart(<chaîne>) |
Substring |
Extrait la sous-chaîne débutant au caractère n1 de la chaîne et de longueur n2 |
Substring(<chaîne>, <départ>, <longueur>) |
ToString |
Convertit le nombre en chaîne |
ToString(<nombre>, <nombre>) |
Upper |
Renvoie la chaîne en majuscules |
Upper(<chaîne>) |
VirtualLink |
Renvoie la clé étrangère d'un lien passée en premier paramètre, si les deux autres paramètres sont égaux |
VirtualLink(<nombre>, <nombre>, <nombre>) |
VirtualLinkStr |
Renvoie la clé étrangère (texte) d'un lien passée en premier paramètre, si les deux autres paramètres sont égaux |
VirtualLinkStr(<chaîne>, <nombre>, <nombre>) |
dataLength |
Renvoie la taille de la chaîne |
dataLength(<chaîne>) |
Date
Nom |
Description |
Syntaxe |
AddDays |
Ajoute un nombre de jours à une date |
AddDays(<date>, <nombre>) |
AddHours |
Ajoute un nombre d'heures à une date |
AddHours(<date>, <nombre>) |
AddMinutes |
Ajoute un nombre de minutes à une date |
AddMinutes(<date>, <nombre>) |
AddMonths |
Ajoute un nombre de mois à une date |
AddMonths(<date>, <nombre>) |
AddSeconds |
Ajoute un nombre de secondes à une date |
AddSeconds(<date>, <nombre>) |
AddYears |
Ajoute un nombre d'années à une date |
AddYears(<date>, <nombre>) |
DateOnly |
Renvoie la date uniquement (avec heure à zéro)* |
DateOnly(<date>) |
Jour |
Renvoie le nombre représentant le jour de la date |
Day(<date>) |
DayOfYear |
Renvoie le numéro du jour dans l'année de la date |
DayOfYear(<date>) |
DaysAgo |
Renvoie la date correspondant à la date courante moins n jours |
DaysAgo(<nombre>) |
DaysAgoInt |
Renvoie la date (entier aaaammjj) correspondant à la date courante moins n jours |
DaysAgoInt(<nombre>) |
DaysDiff |
Nombre de jours entre deux dates |
DaysDiff(<date de fin>, <date de début>) |
DaysOld |
Renvoie l'ancienneté en jours d'une date |
DaysOld(<date>) |
GetDate |
Renvoie la date système courante du serveur |
GetDate() |
Hour |
Renvoie l'heure de la date |
Hour(<date>) |
HoursDiff |
Renvoie le nombre d'heures entre deux dates |
HoursDiff(<date de fin>, <date de début>) |
Minute |
Renvoie les minutes de la date |
Minute(<date>) |
MinutesDiff |
Renvoie le nombre de minutes entre deux dates |
MinutesDiff(<date de fin>, <date de début>) |
Month |
Renvoie le nombre représentant le mois de la date |
Month(<date>) |
MonthsAgo |
Renvoie la date correspondant à la date courante moins n mois |
MonthsAgo(<nombre>) |
MonthsDiff |
Renvoie le nombre de mois entre deux dates |
MonthsDiff(<date de fin>, <date de début>) |
MonthsOld |
Renvoie l'ancienneté en mois d'une date |
MonthsOld(<date>) |
Second |
Renvoie les secondes de la date |
Second(<date>) |
SecondsDiff |
Renvoie le nombre de secondes entre deux dates |
SecondsDiff(<date de fin>, <date de début>) |
SubDays |
Enlève un nombre de jours à une date |
SubDays(<date>, <nombre>) |
SubHours |
Enlève un nombre d'heures à une date |
SubHours(<date>, <nombre>) |
SubMinutes |
Enlève un nombre de minutes à une date |
SubMinutes(<date>, <nombre>) |
SubMonths |
Enlève un nombre de mois à une date |
SubMonths(<date>, <nombre>) |
SubSeconds |
Enlève un nombre de secondes à une date |
SubSeconds(<date>, <nombre>) |
SubYears |
Enlève un nombre d'années à une date |
SubYears(<date>, <nombre>) |
ToDate |
Convertit une date + heure en date seule |
ToDate(<date + heure>) |
ToDateTime |
Convertit une chaîne en date + heure |
ToDateTime(<chaîne>) |
TruncDate |
Arrondit une date + heure à la seconde |
TruncDate(@lastModified, <nombre de secondes>) |
TruncDateTZ |
Arrondit une date + heure à la seconde près |
TruncDateTZ(<date>, <nombre de secondes>, <fuseau horaire>) |
TruncQuarter |
Arrondit une date au trimestre |
TruncQuarter(<date>) |
TruncTime |
Arrondit la partie heure à la seconde |
TruncTim(e<date>, <nombre de secondes>) |
TruncWeek |
Arrondit une date à la semaine |
TruncWeek(<date>) |
TruncYear |
Arrondit une date + heure au premier janvier de l'année |
TruncYear(<date>) |
TruncWeek |
Renvoie le numéro du jour dans la semaine de la date |
WeekDay(<date>) |
Year |
Renvoie le nombre représentant l'année de la date |
Year(<date>) |
YearAnd Month |
Renvoie le nombre représentant l'année et le mois de la date |
YearAndMonth(<date>) |
YearsDiff |
Renvoie le nombre d'années entre deux dates |
YearsDiff(<date de fin>, <date de début>) |
YearsOld |
Renvoie l'ancienneté en années d'une date |
YearsOld(<date>) |
Notez que la fonction Dateonly prend uniquement le fuseau horaire du serveur, et non celui de l'opérateur.
Numériques
Nom |
Description |
Syntaxe |
Abs |
Renvoie la valeur absolue d'un nombre |
Abs(<nombre>) |
Ceil |
Renvoie le plus petit entier supérieur ou égal à un nombre |
Ceil(<nombre>) |
Floor |
Renvoie le plus grand entier supérieur ou égal à un nombre |
Floor(<nombre>) |
Greatest |
Renvoie le plus grand de deux nombres |
Greatest(<nombre 1>, <nombre 2>) |
Least |
Renvoie le plus petit de deux nombres |
Least(<nombre 1>, <nombre 2>) |
Mod |
Renvoie le reste de la division entiers de n1 par n2 |
Mod(<nombre 1>, <nombre 2>) |
Percent |
Renvoie la proportion en pourcentage entre deux nombres |
Percent(<nombre 1>, <nombre 2>) |
Random |
Renvoie une valeur aléatoire |
Random() |
Round |
Arrondit un nombre à n décimales près |
Round(<nombre>, <nombre de décimales>) |
Sign |
Renvoie le signe du nombre |
Sign(<nombre>) |
ToDouble |
Convertit un entier en réel |
ToDouble(<nombre>) |
ToInt64 |
Convertit un réel en entier 64 bits |
ToInt64(<nombre>) |
ToInteger |
Convertit un réel en entier |
ToInteger(<nombre>) |
Trunc |
Tronque n1 à n2 décimales |
Trunc(<n1>, <n2>) |
Nom |
Description |
Syntaxe |
ConvertCurrency |
Convertit un montant d'une monnaie source en un montant d'une monnaie cible |
ConvertCurrency(<montant>, <monnaie source>, <monnaie cible>, <date de conversion>) |
FormatCurrency |
Formate l'affichage d'un montant en fonction des paramètres de la monnaie choisie |
FormatCurrency(<montant>, <monnaie>) |
Géomarketing
Nom |
Description |
Syntaxe |
Distance |
Renvoie la distance entre deux points donnés par leur longitude et leur latitude, exprimées en degrés.. |
Distance(<Longitude A>, <Latitude A>, <Longitude B>, <Latitude B>) |
Autres
Nom |
Description |
Syntaxe |
Case |
Renvoie la valeur 1 si la condition est vérifiée. Sinon, renvoie la valeur 2 |
Case(When(<condition>, <valeur 1>), Else(<valeur 2>)) |
ClearBit |
Efface le Flag dans la valeur |
ClearBit(<identifiant>, <flag>) |
Coalesce |
Renvoie la valeur 2 si la valeur 1 est nulle ou vide (null), sinon renvoie la valeur 1 |
Coalesce(<valeur 1>, <valeur 2>) |
Decode |
Renvoie la valeur 3 si valeur 1 = valeur 2, sinon renvoie la valeur 4 |
Decode(<valeur 1>, <valeur 2>, <valeur 3>, <valeur 4>) |
Else |
Renvoie la valeur 1 (ne peut être utilisée qu'en paramètre de la fonction Case) |
Else(<valeur 1>, <valeur 2>) |
GetEmailDomain |
Extrait le domaine d'une adresse e-mail |
GetEmailDomain(<valeur>) |
GetMirrorURL |
Récupère l'URL du serveur de page miroir |
GetMirrorURL(<valeur>) |
Iif |
Renvoie la valeur 1 si l'expression est vraie, sinon renvoie la valeur 2 |
Iif(<condition>, <valeur 1>, <valeur 2>) |
IsBitSet |
Indique si le Flag est présent dans la valeur |
IsBitSet(<identifiant>, <flag>) |
IsEmptyString |
Renvoie la valeur 2 si la chaîne 1 est vide, sinon renvoie la valeur 3 |
IsEmptyString(<valeur 1>, <valeur 2>, <valeur 3>) |
NoNull |
Renvoie la chaîne vide si l'argument n'a pas de valeur (null) |
NoNull(<valeur>) |
RowId |
Renvoie le numéro de la ligne |
RowId |
SetBit |
Force le Flag dans la valeur |
SetBit(<identifiant>, <flag>) |
ToBoolean |
Convertit un nombre en booléen |
ToBoolean(<nombre>) |
When |
Renvoie la valeur 1 si l'expression est vérifiée. Sinon, renvoie la valeur 2 (ne peut être utilisée qu'en paramètre de la fonction Case) |
When(<condition>, <valeur 1>) |
Fonctions de fenêtrage
Nom |
Description |
Syntaxe |
Desc |
Applique un tri descendant |
Desc(<valeur 1>) |
OrderBy |
Trie le résultat au sein de la partition |
OrderBy(<valeur 1>) |
PartitionBy |
Partitionne le résultat d'une requête sur une table |
PartitionBy(<valeur 1>) |
RowNum |
Génère un numéro de ligne en fonction de la partition de la table et d'un ordre de tri. |
RowNum(PartitionBy(<valeur 1>), OrderBy(<valeur 1>)) |