Zum Hauptinhalt springen

Formelausdrücke

Formelausdrücke können an verschiedenen Stellen in MapEdit verwendet werden.

Konzept

Der Ausdrucks Auswerter unterstützt Ausdrücke ähnlich die einer SQL Where Bedigung. Er kann Ausdrücke auflösen und unterstützt Variablen und einen spezifizerten Satz von Funktionen.

Unterstützte Operatoren und Funktionen

ReihenfolgeOperator/FunktionBeschreibungBeispiel
10()Sub term(COLUMN+1)=2
11CASECase expressionCASE a WHEN b THEN c WHEN d THEN e ELSE f END
15INContained in listCOLUMN IN (1,2,3)
15NVLReplace NULL valuesNVL(COLUMN,2)=2
15NVL2Replace NULL valuesNVL2(COLUMN,1,2)=1
15COALESCEReplace NULL valuesCOALESCE(COLUMN,1,2,3,4)=2
15CONCATConcatenate stringsCONCAT('a','b')='ab'
15TRIMRemove whitespaceTRIM(' abc')='abc'
15LOWERConvert string to lower caseLOWER('ABC')='abc'
15UPPERConvert string to upper caseUPPER('abc')='ABC'
15ROUNDRound a numeric valueROUND(1.234,2)=1.23
20IS NULL/IS NOT NULLCheck if value is NULLCOLUMN IS NULL
21LIKE/NOT LIKELike operatorCOLUMN LIKE 'A%'
29NOTInvert conditionNOT COLUMN IN(1,2,3)
31*MultiplicationCOLUMN*1=2
32/DivisionCOLUMN/1=2
41+AdditionCOLUMN+1=2
42-SubtractionCOLUMN-1=2
49||Concatenate stringsCOLUMN||COLUMN2='ab'
61<Is smaller?COLUMN<1
62<=Is smaller or equal?COLUMN<=1
63>Is larger?COLUMN>1
64>=Is larger or equal?COLUMN>=1
71==/=Is equal?COLUMN=1
72!=/<>Is not equal?COLUMN!=1
111ANDLogical ANDCOLUMN=1 AND COLUMN2=2
121ORLogical ORCOLUMN=1 OR COLUMN2=2

Die Rangfolge ist so gestaltet, dass Prioritäten wie "Punktrechnung vor Strichrechnung" beim Auflösen beachtet werden - alternativ kann man die Terme auch einklammern. Damit können hier komplexere Bedingungen erstellt werden wie zum Beispiel: COLUMN='Value' OR COLUMN2 IN(A,B,C)