Expressiefuncties
Laatst bijgewerkt: 27-10-2026Gebruik functies om rijwaarden te transformeren, ontbrekende gegevens te verwerken of gerelateerde waarden op te halen bij het samenstellen van expressies. Ga voor meer informatie naar Expressies bouwen.
De onderstaande functies beschrijven expressies voor verplaatsingstaken in door SaaS beheerde tussenopslag-, lake-tussenopslag- en replicatietaken. Gebruik de functiesignatuur die in uw editor wordt weergegeven. Vierkante haken in signaturen geven optionele argumenten aan; voer de haken niet in.
Voor CDC Storage- en Streaming Transform-functies, zie Transformatiefuncties. Voor opslag-, transformatie- en datamart-expressies die worden uitgevoerd op een cloud-dataplatform gebruikt u de functiesyntaxis van dat platform.
Tekenreeksfuncties
Prefix- en suffixfuncties werken op het begin of het einde van een tekenreeks. Tekenvervanging werkt op afzonderlijke tekens in plaats van een heel voorvoegsel of achtervoegsel te matchen.
| Functie | Gedrag en argumenten | Voorbeeld en resultaat |
|---|---|---|
$CONCAT(X, Y)
|
Voegt de twee tekenreeksen X en Y samen, in die volgorde. Retourneert NULL als een van beide argumenten NULL is. Nest aanroepen om meer dan twee tekenreeksen samen te voegen. |
$CONCAT('My', 'Picture') retourneert 'MyPicture'. $CONCAT('My', NULL) retourneert NULL. |
$INSTR(string, substring)
|
Retourneert de op 1 gebaseerde positie van het eerste voorkomen van substring in string. Retourneert 0 als de substring niet wordt gevonden. |
$INSTR('mystring', 'ing') retourneert 6. $INSTR('mystring', 'xyz') retourneert 0. |
$LENGTH(string)
|
Retourneert het aantal tekens in string, niet de grootte in bytes. |
$LENGTH('mystring') retourneert 8. |
$LOWER(string)
|
Retourneert een kopie van string waarbij ASCII-letters zijn omgezet naar kleine letters. |
$LOWER('ABC') retourneert 'abc'. |
$LTRIM(string[, characters])
|
Verwijdert tekens aan het begin van string. Het optionele argument characters is een set tekens om te verwijderen, geen prefix. Indien weggelaten, worden spaties verwijderd. |
$LTRIM(' orders') retourneert 'orders'. $LTRIM('@@orders', '@') retourneert 'orders'. |
$REMOVE_PREFIX(string, prefix)
|
Retourneert een kopie van string waarbij het opgegeven begin prefix is verwijderd. |
$REMOVE_PREFIX('mystring', 'my') retourneert 'string'. |
$REMOVE_SUFFIX(string, suffix)
|
Retourneert een kopie van string waarbij het opgegeven einde suffix is verwijderd. |
$REMOVE_SUFFIX('mystring', 'ing') retourneert 'mystr'. |
$REPLACE(string, pattern, replacement)
|
Vervangt elk exemplaar van pattern in string door replacement. Alle drie de argumenten zijn verplicht. Gebruik een lege vervangende tekenreeks om overeenkomende tekst te verwijderen. |
$REPLACE('a-b-c', '-', '_') retourneert 'a_b_c'. $REPLACE('a-b', '-', '') retourneert 'ab'. |
$REPLACE_CHARS(string, chars, replacement)
|
Vervangt elk teken dat wordt vermeld in chars door het teken op dezelfde positie in replacement. Niet-vermelde tekens blijven ongewijzigd. Als een vervangingspositie ontbreekt, wordt het eerste vervangingsteken gebruikt. |
$REPLACE_CHARS('mystring', 's', 'z') retourneert 'myztring'. $REPLACE_CHARS('abcde', 'abcd', '123') retourneert '1231e'. |
$REPLACE_PREFIX(string, prefix, replacement)
|
Vervangt de beginnende prefix in string door replacement. |
$REPLACE_PREFIX('mystring', 'my', 'new') retourneert 'newstring'. |
$REPLACE_SUFFIX(string, suffix, replacement)
|
Vervangt het afsluitende suffix in string door replacement, in plaats van elk voorkomen te vervangen. |
$REPLACE_SUFFIX('mystring', 'ing', 'new') retourneert 'mystrnew'. |
$RTRIM(string[, characters])
|
Verwijdert tekens aan het einde van string. Het optionele characters argument is een verzameling tekens die moeten worden verwijderd, geen achtervoegsel. Indien weggelaten, worden spaties verwijderd. |
$RTRIM('orders ') retourneert 'orders'. $RTRIM('orders@@', '@') retourneert 'orders'. |
$SUBSTR(string, start[, length])
|
Extraheert tekst uit string, beginnend bij de op 1 gebaseerde positie start. length geeft het aantal tekens aan. Indien weggelaten, worden de resterende tekens geretourneerd. |
$SUBSTR('abcdef', 2, 3) retourneert 'bcd'. |
$TRIM(string[, characters])
|
Verwijdert tekens aan beide uiteinden van string. Het optionele argument characters is een verzameling tekens die moeten worden verwijderd, geen substring. Indien weggelaten, worden spaties verwijderd. |
$TRIM(' orders ') retourneert 'orders'. $TRIM('@#orders#@', '@#') retourneert 'orders'. |
$UNICODE(string)
|
Retourneert het numerieke Unicode-codepunt van het eerste teken in string. Het argument moet een string zijn. |
$UNICODE('ABC') retourneert 65. |
$UPPER(string)
|
Retourneert een kopie van string waarin ASCII-letters zijn omgezet naar hoofdletters. |
$UPPER('abc') retourneert 'ABC'. |
Numerieke functies
Gebruik deze functies om numerieke waarden voor de huidige rij te berekenen. $MAX en $MIN vergelijken argumenten binnen de rij, niet waarden over rijen heen.
| Functie | Gedrag en argumenten | Voorbeeld en resultaat |
|---|---|---|
$ABS(X)
|
Retourneert de absolute waarde van het numerieke argument X. |
$ABS(-20) retourneert 20. |
$MAX(arg1, arg2, ...)
|
Retourneert de grootste waarde van de opgegeven numerieke argumenten. Geef ten minste twee argumenten op. | $MAX(10, 4, 20, 9) retourneert 20. |
$MIN(arg1, arg2, ...)
|
Retourneert de kleinste waarde uit de opgegeven numerieke argumenten. Geef ten minste twee argumenten op. | $MIN(10, 4, 20, 9) retourneert 4. |
$RANDOM()
|
Retourneert een pseudowillekeurig geheel getal met teken. Accepteert geen argumenten. | $RANDOM() retourneert een geheel getal dat negatief, nul of positief kan zijn. De waarde ervan varieert tussen aanroepen. |
$ROUND(value[, digits])
|
Rondt value af op digits decimalen en retourneert een floating-pointwaarde. Als digits wordt weggelaten, wordt afgerond op nul decimalen. |
$ROUND(3.141592, 3) retourneert 3.142. |
LOB-functies
Deze functies werken met binary large objects (BLOB's). Het argument size N specificeert bytes, geen tekens.
| Functie | Gedrag en argumenten | Voorbeeld en resultaat |
|---|---|---|
$HEX(blob)
|
Retourneert hexadecimale tekst in hoofdletters die de bytes van blob vertegenwoordigt. Numerieke invoer wordt eerst geconverteerd naar tekst; het resultaat is niet de machinerepresentatie van het getal. |
$HEX(X'4142') retourneert '4142'. |
$RANDOM_BLOB(N)
|
Retourneert N pseudowillekeurige bytes. Als N kleiner is dan 1, wordt één byte geretourneerd. Gebruik deze functie niet als garantie voor cryptografische willekeurigheid. |
$RANDOM_BLOB(4) retourneert een BLOB van vier bytes. De waarde ervan varieert tussen aanroepen. |
$ZERO_BLOB(N)
|
Retourneert een BLOB met N nulbytes. |
$HEX($ZERO_BLOB(3)) retourneert '000000'. |
Null-controlefuncties
| Functie | Gedrag en argumenten | Voorbeeld en resultaat |
|---|---|---|
$COALESCE(X, Y, ...)
|
Retourneert het eerste niet-NULL-argument, in de volgorde van de argumenten. Geef ten minste twee argumenten op. Als alle argumenten NULL zijn, is het resultaat NULL. Een lege tekenreeks is niet NULL. | $COALESCE(NULL, 'Unknown') retourneert 'Unknown'. $COALESCE('', 'Unknown') retourneert een lege tekenreeks. |
$IFNULL(X, Y)
|
Retourneert X als dit niet NULL is; retourneert anders Y. Retourneert NULL als beide argumenten NULL zijn. Geef exact twee argumenten op. |
$IFNULL(NULL, 'Unknown') retourneert 'Unknown'. $IFNULL('Known', 'Unknown') retourneert 'Known'. |
$NULLIF(X, Y)
|
Retourneert NULL als X en Y gelijk zijn; retourneert anders X. Geef exact twee argumenten op. |
$NULLIF('Unknown', 'Unknown') retourneert NULL. $NULLIF('Known', 'Unknown') retourneert 'Known'. |
Datum- en tijdfuncties
Geef een datum-, tijd- of datum/tijd-tekenreeks op zoals '2026-10-08', '12:34:56' of '2026-10-08 12:34:56'. Plaats datumconstanten tussen aanhalingstekens zodat koppeltekens niet als aftrekking worden geïnterpreteerd.
| Functie | Gedrag en argumenten | Voorbeeld en resultaat |
|---|---|---|
$DATE(date_string)
|
Retourneert de datum van date_string als tekst in de indeling YYYY-MM-DDConfiguring database options...
Updating tables...
================================================================================
CRITICAL: Exception occured while running update!
--------------------------------------------------------------------------------
Error occurred while executing following query:
ALTER TABLE `sys_objects_grid` ADD `source_type` varchar(16) NOT NULL default 'grid' AFTER `table`
Original error message was:
Duplicate column name 'source_type'
================================================================================
Database update failed |
$DATE('2026-10-08') retourneert '2026-10-08'. |
$DATETIME(datetime_string)
|
Retourneert de datum en tijd van datetime_string als tekst in de indeling YYYY-MM-DD HH:MM:SS . |
$DATETIME('2026-10-08 12:34:56') retourneert '2026-10-08 12:34:56'. |
$JULIANDAY(datetime_string)
|
Retourneert fractionele dagen sinds het middaguur in Greenwich op 24 november 4714 v.Chr. Trek twee Juliaanse dagwaarden van elkaar af om het aantal verstreken dagen te berekenen. | $JULIANDAY('2000-01-01 12:00:00') retourneert 2451545.0. $JULIANDAY('2026-10-09') - $JULIANDAY('2026-10-08') retourneert 1.0. |
$STRFTIME(format, datetime_string)
|
Retourneert tekst opgemaakt met behulp van format. Het formaat komt vóór de datum- of datum/tijdinvoer. |
$STRFTIME('%Y-%m', '2026-10-08') retourneert '2026-10'. |
$TIME(time_string)
|
Retourneert de tijd van time_string als tekst in de indeling HH:MM:SS.. |
$TIME('12:34:56') retourneert '12:34:56'. |
Opmaakvervangingen
Combineer de volgende substituties met letterlijke scheidingstekens in $STRFTIME. '%Y-%m-%d %H:%M:%S' formatteert bijvoorbeeld zowel de datum als de tijd. Een niet-ondersteunde substitutie retourneert NULL.
| Substitutie | Betekenis |
|---|---|
%d
|
Dag van de maand, 01-31. |
%H
|
Uur, 00-24. |
%f
|
Seconden met fractioneel deel, SS.SSS. |
%j
|
Dag van het jaar, 001-366. |
%J
|
Juliaans dagnummer. |
%m
|
Maand, 01-12. |
%M
|
Minuut, 00-59. |
%s
|
Seconden sinds 1 januari 1970, 00:00:00 UTC. |
%S
|
Seconden, 00-59. |
%w
|
Dag van de week, 0-6; zondag is 0. |
%W
|
Week van het jaar, 00-53; weken beginnen op maandag. |
%Y
|
Jaar, 0000-9999. |
%%
|
Een letterlijk procentteken. |
Dataverrijkingsfuncties
Gebruik een lookup om een gerelateerde waarde, zoals een afdelingsnaam, toe te voegen uit een tabel in het bron- of doeleindpunt.
| Functie | Gedrag en argumenten | Voorbeeld en resultaat |
|---|---|---|
$SOURCE_LOOKUP(time_to_live, schema, table, expression, condition, condition_params)
|
Haalt de waarde van expression op uit table van het broneindpunt, in schema, voor het record dat overeenkomt met condition. De voorwaardeparameters leveren op volgorde waarden voor de bijbehorende placeholders. |
$SOURCE_LOOKUP(60, 'HR', 'DEPARTMENTS', 'DEPARTMENT_NAME', 'DEPARTMENT_ID=:1', $DEPARTMENT_ID) haalt de overeenkomende afdelingsnaam op uit de bron. |
$TARGET_LOOKUP(time_to_live, schema, table, expression, condition, condition_params)
|
Haalt de waarde van expression op uit de table van het doeleindpunt, in schema, voor het record dat overeenkomt met condition. De voorwaardeparameters leveren op volgorde waarden voor de bijbehorende placeholders. |
$TARGET_LOOKUP(60, 'dbo', 'DEPARTMENTS', 'DEPARTMENT_NAME', 'DEPARTMENT_ID=?', $DEPARTMENT_ID) haalt de overeenkomende afdelingsnaam op uit het doel. |
condition_params vertegenwoordigt een door komma's gescheiden lijst van argumenten, niet een enkel array-argument. Beide functies gebruiken de volgende parameters:
| Parameters | Betekenis |
|---|---|
time_to_live
|
Vereiste cachelevensduur, zonder standaardwaarde. Geef de cachelevensduur in seconden op, Korte levensduren vernieuwen regelmatig veranderende gegevens. Langere levensduren verminderen endpointquery's, maar kunnen gecachte waarden retourneren nadat de opzoekgegevens zijn gewijzigd. Gebruik 'geen vervaldatum' alleen voor gegevens die niet veranderen. |
schema
|
Schema dat de opzoektabel bevat, opgegeven als tekst. |
table
|
Te bevragen tabel binnen dat schema, opgegeven als tekst. |
expression
|
SQL-expressie die één kolomwaarde selecteert, zoals 'DEPARTMENT_NAME' of 'PRICE * 1.2'. Gebruik het SQL-dialect van het eindpunt dat wordt benaderd, niet de functiesyntaxis van de buitenste expressie. |
condition
|
SQL-voorwaarde die het opzoekrecord identificeert. Gebruik het dialect en de placeholdersyntaxis van het benaderde eindpunt: bijvoorbeeld :1 en :2 voor Oracle, of ? voor Microsoft SQL Server. |
condition_params
|
Waarden gebonden aan de tijdelijke aanduidingen voor de voorwaarde, op volgorde. Kolomparameters zoals $COMPANY_ID en $DEPARTMENT_ID leveren waarden uit de huidige rij. |
Indexeer de opzoekvelden om de querykosten te verlagen. Selecteer een voorwaarde die het gewenste record identificeert en stel het gegevenstype van de toegevoegde kolom zo in dat dit overeenkomt met de geselecteerde waarde.
$SOURCE_LOOKUP en $TARGET_LOOKUP wordt niet ondersteund. Zie Expressies testen.Voorbeeld van bronopzoeking
Voor een Oracle-bron haalt de volgende expressie DEPARTMENT_NAME op uit HR.DEPARTMENTS en slaat het resultaat gedurende 60 seconden op in de cache:
$SOURCE_LOOKUP(60, 'HR', 'DEPARTMENTS', 'DEPARTMENT_NAME', 'DEPARTMENT_ID=:1', $DEPARTMENT_ID)
Als de huidige rij DEPARTMENT_ID 10 heeft en het overeenkomende opzoekrecord 'Sales' bevat, is het resultaat 'Sales'.
Gebruik voor een Microsoft SQL Server-bron de bijbehorende syntaxis voor voorwaardelijke tijdelijke aanduidingen. Dit voorbeeld bindt de waarden voor bedrijf en afdeling in die volgorde:
$SOURCE_LOOKUP(60, 'dbo', 'DEPARTMENTS', 'DEPARTMENT_NAME', 'COMPANY_ID=? AND DEPARTMENT_ID=?', $COMPANY_ID, $DEPARTMENT_ID)
Voorbeeld van target lookup
Voor een Microsoft SQL Server-doel voert u een query uit op de doeltabel met behulp van het bijbehorende SQL-dialect:
$TARGET_LOOKUP(60, 'dbo', 'DEPARTMENTS', 'DEPARTMENT_NAME', 'DEPARTMENT_ID=?', $DEPARTMENT_ID)
Als het doelopzoekrecord voor afdeling 10 'Sales' bevat, is het resultaat voor een invoerwaarde van 10 'Sales'.
Bewerkingsfuncties
| Functie | Gedrag en argumenten | Voorbeeld en resultaat |
|---|---|---|
$OPERATION_INDICATOR(value_on_delete, value_on_update, value_on_insert)
|
Retourneert de vlag die u voor elke bronbewerking opgeeft. De volgorde van de argumenten is verwijderen, bijwerken en vervolgens invoegen. Gebruik een aparte kolom om de vlaggen op te slaan en geef vlagwaarden op die overeenkomen met het bijbehorende gegevenstype. | $OPERATION_INDICATOR('Deleted', 'Updated', 'Inserted') retourneert 'Updated' voor een update. |
In Qlik Replicate wijzigt deze functie ook de verwerking van verwijderingen: deze behoudt het bijbehorende doelrecord en markeert dit met value_on_delete. Dit gedrag voor het afhandelen van verwijderingen vereist bevestiging voor Qlik Talend Cloud Data Integration.
Logische functies
| Functie | Gedrag en argumenten | Voorbeeld en resultaat |
|---|---|---|
$IFF(boolean_expression, true_value, false_value)
|
Retourneert true_value als boolean_expression wordt geëvalueerd als true; retourneert anders false_value. Geef eerst de voorwaarde op, gevolgd door de twee resultaatwaarden. |
$IFF(10 > 5, 'High', 'Low') retourneert 'High'. $IFF(3 > 5, 'High', 'Low') retourneert 'Low'. |
Overige functies
| Functie | Gedrag en argumenten | Voorbeeld en resultaat |
|---|---|---|
$LIKE(pattern, string[, escape_character])
|
Retourneert 1 bij een overeenkomst of 0 als er geen overeenkomst is; NULL-invoer levert NULL op. % komt overeen met nul of meer tekens; _ komt overeen met één teken. Matching negeert standaard ASCII-hoofdlettergevoeligheid. Het optionele escape-teken is één teken. Het patroon komt eerst, in tegenstelling tot de LIKE-operator. |
$LIKE('A%', 'Alice') retourneert 1. $LIKE('10!%', '10%', '!') retourneert 1. |
$TYPEOF(expression)
|
Retourneert de opslagklasse van de waarde: 'null', 'integer', 'real', 'text' of 'blob'. Dit is niet het geconfigureerde uitvoerkolomtype. |
$TYPEOF(12.5) retourneert 'real'. |
Hashfuncties
| Functie | Gedrag en argumenten | Voorbeeld en resultaat |
|---|---|---|
$SHA256(string)
|
Retourneert de hexadecimale SHA-256-hash van de invoertekenreeks. | $SHA256('abc') retourneert ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad. |
Een hash is geen versleuteling. Voorspelbare invoerwaarden kunnen nog steeds worden geïdentificeerd door hun hashes te vergelijken.