Les transformations peuvent porter sur un seul élément ou colonne ou sur plusieurs éléments ou colonnes. Par exemple, une transformation d'un élément peut concerner une colonne source contenant un salaire en dollars. La colonne correspondante cible contient une colonne similaire mais dont les valeurs sont exprimées en milliers de dollars. Vous transformez le type de la colonne source en type de la colonne cible.
Une transformation multiple est une relation "plusieurs à un". Par exemple, vous avez un élément prénom et un élément nom côté source. Il n'existe qu'un seul élément de nom côté cible. La transformation concatène les champs de prénom et de nom de la source en un seul champ de nom côté cible. Les colonnes composant la transformation doivent être utilisées comme source dans le mappage.
Les correspondances de type "un à plusieurs" doivent être définies comme plusieurs correspondances "un à un", disposant chacune de leur propre fonction de transformation en fonction des besoins.
Une fonction de base de données est une relation entre un ensemble de valeurs de données d'entrée et un ensemble de valeurs de résultat. Par exemple, la fonction TIMESTAMP peut recevoir des valeurs de données d'entrée de type DATE et TIME et le résultat obtenu est TIMESTAMP. Les fonctions peuvent être intégrées ou définies par l'utilisateur (côté cible du mappage). Les expressions de fonctions peuvent être utilisées pour des transformations de données, pour des conditions de filtre ou de fusion ou pour capturer des modèles d'expression communs.
Les fonctions intégrées sont fournies avec le gestionnaire de bases de données. Elles renvoient une valeur de résultat simple. Ces fonctions incluent des fonctions de colonnes (AVG, par exemple), des fonctions d'opérateurs (+, par exemple) et des fonctions de transtypage (DECIMAL, par exemple).
L'éditeur de mappage accepte toutes les fonctions scalaires et toutes les fonctions d'agrégation dans le générateur d'expressions. Les fonctions doivent être compatibles avec l'environnement de développement. Voici certaines des fonctions fournies par le générateur d'expressions :
DAYOFYEAR('1988-12-25')
Remplacer toutes les occurrences de la lettre 'N' dans le mot 'DINING' par 'VID'. REPLACE ('DINING', 'N', 'VID')
CHAR(Floating_point_column) = chaîne de caractères
MAX(BONUS + 1000)
ABS(SAMP.EMPLOYEE.EMPNO)
Les opérateurs arithmétiques peuvent être appliqués à des types numériques avec signes et des types de date/heure. Par exemple, USER+2 n'est pas valide. L'opérateur préfixe + (plus unaire) ne change pas d'opérande. L'opérateur préfixe - (moins unaire) change le signe d'un opérande différent de zéro. Si le type de données A est un entier négatif, le type de données de -A est un entier positif. Le premier caractère suivant un opérateur préfixe ne doit pas être un signe plus ou moins. Les opérateurs infixes +, -, * et / indiquent respectivement l'addition, la soustraction, la multiplication et la division. La valeur du deuxième opérande d'une division ne doit pas être égal à zéro.
Un prédicat indique une condition vraie, fausse ou inconnue à propos d'une ligne ou d'un groupe spécifique.
L'éditeur de mappage prend en charge les opérateurs suivants : *, /, +, -, \, <,>, =, %. L'éditeur de mappage prend en charge les mots clés suivants : BETWEEN, NOT, LIKE, NULL, IN, EXISTS.
SALARY < 20000 value1 BETWEEN value2 AND value3 DEPTNO IN ('D01', 'B01', 'C01')