F Overzicht van Uitdrukkingseditor

In deze sectie worden de uitdrukkingselementen beschreven die u in de uitdrukkingseditor kunt gebruiken.

Onderwerpen:

SQL-operatoren

U gebruikt SQL-operatoren om vergelijkingen en rekenkundige bewerkingen tussen expressies op te geven.

U kunt verschillende typen SQL-operatoren gebruiken.

Operator Voorbeeld Beschrijving Syntaxis

BETWEEN

"COSTS"."UNIT_COST" BETWEEN 100,0 AND 5000,0

Hiermee wordt bepaald of een waarde zich tussen twee niet-inclusieve grenzen bevindt.

BETWEEN kan vooraf worden gegaan door NOT om de voorwaarde teniet te doen.

BETWEEN [ondergrens] AND [bovengrens]

IN

"COSTS"."UNIT_COST" IN(200, 600, 'A')

Hiermee wordt bepaald of een waarde aanwezig is in een set met waarden.

IN ([door komma's gescheiden lijst])

IS NULL

"PRODUCTS"."PROD_NAME" IS NULL

Hiermee wordt bepaald of een waarde NULL is.

IS NULL

LIKE

"PRODUCTS"."PROD_NAME" LIKE 'prod%'

Hiermee wordt bepaald of een waarde overeenkomt met een hele string of een deel ervan. Deze wordt vaak met jokertekens gebruikt om een overeenkomende tekenstring van nul of meer tekens (%) aan te geven of één overeenkomend teken (_).

LIKE

+

(FEDERAL_REVENUE + LOCAL_REVENUE) - TOTAL_EXPENDITURE

Plusteken voor optellen

+

-

(FEDERAL_REVENUE + LOCAL_REVENUE) - TOTAL_EXPENDITURE

Minteken voor aftrekken

-

* of X

SUPPORT_SERVICES_EXPENDITURE * 1,5

Maalteken voor vermenigvuldigen

*

X

/

CAPITAL_OUTLAY_EXPENDITURE/1,05

Deelteken voor delen

/

%

 

Percentage

%

||

STATE||CAST(YEAR AS CHAR(4))

Aaneenschakeling tekenstring

||

(

(FEDERAL_REVENUE + LOCAL_REVENUE) - TOTAL_EXPENDITURE

Haakje openen

(

)

(FEDERAL_REVENUE + LOCAL_REVENUE) - TOTAL_EXPENDITURE

Haakje sluiten

)

>

YEAR > 2000 en YEAR < 2016 en YEAR <> 2013

Groterdanteken, geeft waarden aan die hoger zijn dan de vergelijking

>

<

YEAR > 2000 en YEAR < 2016 en YEAR <> 2013

Kleinerdanteken, geeft waarden aan die lager zijn dan de vergelijking

<

=

 

Gelijkteken, geeft dezelfde waarde aan

=

>=

 

Teken voor groter dan of gelijk aan, geeft waarden aan die hetzelfde zijn als de vergelijking of hoger

>=

<=

 

Teken voor kleiner dan of gelijk aan, geeft waarden aan die hetzelfde zijn als de vergelijking of lager

<=

<>

YEAR > 2000 en YEAR < 2016 en YEAR <> 2013

Niet gelijk aan, geeft waarden aan die hoger of lager zijn, dus verschillend

<>

,

STATE in ('ALABAMA','CALIFORNIA')

Komma, gebruikt om elementen in een lijst te scheiden

,

Functies

U kunt verschillende typen functies in uitdrukkingen gebruiken.

Onderwerpen:

Aggregatiefuncties

Met aggregatiefuncties worden bewerkingen op meerdere waarden uitgevoerd om overzichtsresultaten te verkrijgen.

In de volgende lijst worden de aggregatieregels beschreven die beschikbaar zijn voor kolommen en eenheidkolommen. De lijst bevat ook functies die u kunt gebruiken bij het maken van berekende items voor analysen.

  • Standaard: hiermee wordt de standaardaggregatieregel toegepast zoals in het semantische model of door de oorspronkelijke auteur van de analyse. Niet beschikbaar voor berekende items in analysen.

  • Door server bepaald: hiermee wordt de aggregatieregel toegepast die wordt bepaald door Oracle Analytics (zoals de regel die in het semantische model is gedefinieerd). De aggregatie wordt in Oracle Analytics uitgevoerd voor eenvoudige regels zoals Som, Min en Max. Niet beschikbaar voor eenheidkolommen in het deelvenster 'Lay-out' of voor berekende items in analysen.

  • Som: hiermee wordt de som berekend die wordt verkregen door alle waarden in de resultatenset op te tellen. Gebruik deze functie voor items die numerieke waarden hebben.

  • Min: hiermee wordt de minimale waarde (laagste numerieke waarde) berekend van de rijen in de resultatenset. Gebruik deze functie voor items die numerieke waarden hebben.

  • Max: hiermee wordt de maximale waarde (hoogte numerieke waarde) berekend van de rijen in de resultatenset. Gebruik deze functie voor items die numerieke waarden hebben.

  • Gemiddelde: hiermee wordt de gemiddelde waarde berekend van een item in de resultatenset. Gebruik deze functie voor items die numerieke waarden hebben. Gemiddelden in tabellen en draaitabellen worden afgerond op het dichtstbijzijnde gehele getal.

  • Eerste: hiermee wordt voor eenheden in de resultatenset de eerste keer dat een item voorkomt geselecteerd. Voor berekende items wordt het eerste lid volgens de weergave in de lijst 'Geselecteerd' geselecteerd. Niet beschikbaar in het dialoogvenster Kolomformule bewerken.

  • Laatste: hiermee wordt in de resultatenset de laatste keer dat een item voorkomt geselecteerd. Voor berekende items wordt het laatste lid volgens de weergave in de lijst 'Geselecteerd' geselecteerd. Niet beschikbaar in het dialoogvenster Kolomformule bewerken.

  • Telling: hiermee wordt in de resultatenset het aantal rijen berekend dat een andere waarde dan NULL heeft voor het item. Het item is meestal een kolomnaam, waarin het aantal rijen met een andere waarde dan NULL voor die kolom wordt geretourneerd.

  • Aantal verschillende waarden: hiermee wordt afzonderlijke verwerking toegevoegd aan de functie 'Telling', hetgeen betekent dat elke afzonderlijke keer dat een item voorkomt, slechts eenmaal wordt geteld.

  • Geen: hiermee wordt geen aggregatie toegepast. Niet beschikbaar voor berekende items in analysen.

  • Op rapport gebaseerd totaal (wanneer toepasbaar): als deze optie niet is geselecteerd, wordt hiermee aangegeven dat het totaal op basis van de gehele resultatenset moet worden berekend in Oracle Analytics alvorens filters toe te passen op de eenheden. Niet beschikbaar in het dialoogvenster Kolomformule bewerken of voor berekende items in analysen. Alleen beschikbaar voor attribuutkolommen.

Functie Voorbeeld Beschrijving Syntaxis

AGGREGATE AT

AGGREGATE(verkoop AT jaar)

Hiermee worden kolommen geaggregeerd op basis van een of meer niveaus van de gegevensmodelhiërarchie die u hebt opgegeven.

  • measure is de naam van een eenheidkolom.
  • level is het niveau waarnaar u wilt aggregeren.

U kunt desgewenst meerdere niveaus opgeven. U kunt geen niveau opgeven uit een dimensie die niveaus bevat die als het eenheidniveau worden gebruikt voor de eenheid die u in het eerste argument hebt opgegeven. U kunt de functie bijvoorbeeld niet schrijven als AGGREGATE(jaarverkoop AT maand) als maand uit dezelfde tijddimensie afkomstig is als het eenheidniveau voor jaarverkoop.

AGGREGATE(measure AT level [, level1, levelN])

AGGREGATE BY AGGREGATE(verkoop BY maand, regio) Hiermee wordt een eenheid geaggregeerd op basis van een of meer dimensiekolommen.
  • measure is de naam van een eenheidkolom die moet worden geaggregeerd.

  • column is de dimensiekolom waarnaar u wilt aggregeren.
U kunt eenheden aggregeren op basis van meer dan één kolom.
AGGREGATE(eenheid BY kolom[, column1, columnN])

AVG

Avg(Verkoop)

Hiermee wordt het gemiddelde van een numerieke set waarden berekend.

AVG(expr)

AVGDISTINCT

 

Hiermee wordt het gemiddelde van alle afzonderlijke waarden van een uitdrukking berekend.

AVG(DISTINCT expr)

BIN

BIN(opbrengsten BY productid, jaar WHERE productid > 2 INTO 4 BINS RETURNING RANGE_LOW)

Hiermee wordt een bepaalde numerieke uitdrukking verdeeld in een opgegeven aantal buckets van gelijke breedte. Met de functie kan het binnummer of een van de twee eindpunten van het bininterval worden geretourneerd. numeric_expr geeft de eenheid of het numerieke attribuut aan waarvoor binning moet plaatsvinden. BY grain_expr1,…, grain_exprN is een lijst met uitdrukkingen waarmee de mate van granulariteit wordt bepaald waarmee numeric_expr wordt berekend. BY is vereist voor eenheiduitdrukkingen en is optioneel voor attribuutuitdrukkingen. WHERE is een filter dat moet worden toegepast op 'numeric_expr' voordat de numerieke waarden worden toegewezen aan bins. 'INTO number_of_bins BINS' geeft het aantal bins aan dat moet worden geretourneerd. 'BETWEEN min_value AND max_value' geeft de minimum- en maximumwaarden aan die worden gebruikt als eindpunten van de buitenste bins. RETURNING NUMBER geeft aan dat de retourwaarde het binnummer moet zijn (1, 2, 3, 4, etc.). Dit is de standaardwaarde. RETURNING RANGE_LOW geeft de ondergrens van het bininterval aan. RETURNING RANGE_HIGH geeft de bovengrens van het bininterval aan.

BIN(numeric_expr [BY grain_expr1, ..., grain_exprN] [WHERE condition] INTO number_of_bins BINS [BETWEEN min_value AND max_value] [RETURNING {NUMBER | RANGE_LOW | RANGE_HIGH}])

BottomN

 

Hiermee worden de laagste n waarden van het uitdrukkingsargument geclassificeerd van 1 tot n, waarbij 1 overeenkomt met de laagste numerieke waarde.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde. 'integer' is een willekeurig positief geheel getal. Geeft het minimum aantal rangen aan dat in de resultaatset wordt weergegeven, waarbij 1 de laagste rang is.

BottomN(expr, integer)

COUNT

COUNT(Producten)

Hiermee wordt het aantal items met een niet-NULL-waarde bepaald.

COUNT(expr)

COUNTDISTINCT

 

Hiermee wordt afzonderlijke verwerking toegevoegd aan de COUNT-functie.

expr is een willekeurige uitdrukking.

COUNT(DISTINCT expr)

COUNT*

SELECT COUNT(*) FROM Facts

Hiermee wordt het aantal rijen geteld.

COUNT(*)

Eerste

First(Verkoop)

Hiermee wordt de eerstgeretourneerde niet-NULL-waarde van het uitdrukkingsargument geselecteerd. De functie First werkt op het meest gedetailleerde niveau dat in uw expliciet gedefinieerde dimensie is opgegeven.

First([NumericExpression)]

Laatste

Last(Verkoop)

Hiermee wordt de laatstgeretourneerde niet-NULL-waarde van de uitdrukking geselecteerd.

Last([NumericExpression)]

MAVG

 

Hiermee wordt een voortschrijdend gemiddelde berekend van de laatste n gegevensrijen in de resultatenset, met inbegrip van de huidige rij.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde. 'integer' is een willekeurig positief geheel getal. Geeft het gemiddelde aan van de laatste n gegevensrijen.

MAVG(expr, integer)

MAX

MAX(Opbrengsten)

Hiermee wordt de maximale waarde (hoogste numerieke waarde) berekend van de rijen die aan het numerieke uitdrukkingsargument voldoen.

MAX(expr)

MEDIAN

MEDIAN(Verkoop)

Hiermee wordt de mediaanwaarde (middelste waarde) berekend van de rijen die voldoen aan het numerieke uitdrukkingsargument. Als er een even aantal rijen is, is de middelste waarde het gemiddelde van de twee middelste rijen. Deze functie retourneert altijd een dubbele waarde.

MEDIAN(expr)

MIN

MIN(Opbrengsten)

Hiermee wordt de minimale waarde (laagste numerieke waarde) berekend van de rijen die aan het numerieke uitdrukkingsargument voldoen.

MIN(expr)

NTILE

 

Hiermee wordt de rang van een waarde bepaald in termen van een door de gebruiker opgegeven bereik. Deze retourneert gehele getallen die een willekeurig bereik van rangen vertegenwoordigen. NTILE met numTiles=100 retourneert wat meestal het 'percentiel' wordt genoemd (met getallen variërend van 1 t/m 100, waarbij 100 de hoogste sorteringsgrens vertegenwoordigt).

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde. 'numTiles' is een positief geheel getal dat niet NULL is en dat het aantal tegels aangeeft.

NTILE(expr, numTiles)

PERCENTILE

 

Hiermee wordt een percentielrang berekend voor elke waarde die voldoet aan het numerieke uitdrukkingsargument. Het bereik van de percentielrang ligt tussen 0 (1ste percentiel) en 1 (100ste percentiel).

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

PERCENTILE(expr)

RANK

RANK(chronological_key, null, year_key_columns)

Hiermee wordt de rang berekend voor elke waarde die voldoet aan het numerieke uitdrukkingsargument. Het hoogste getal krijgt de rang 1, en elke volgende rang wordt toegewezen aan het volgende gehele getal (2, 3, 4,...). Als bepaalde waarden gelijk zijn, krijgen ze dezelfde rang toegewezen (bijvoorbeeld 1, 1, 1, 4, 5, 5, 7...).

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

RANK(expr)

STDDEV

STDDEV(Verkoop) STDDEV(DISTINCT Verkoop)

Hiermee wordt de standaardafwijking geretourneerd voor een set waarden. Het retourtype is altijd een double.

STDDEV(expr)

STDDEV_POP

STDDEV_POP(Verkoop) STDDEV_POP(DISTINCT Verkoop)

Hiermee wordt de standaardafwijking geretourneerd voor een set waarden met behulp van de rekenformule voor populatievariantie en standaardafwijking.

STDDEV_POP([NumericExpression])

SUM

SUM(Opbrengsten)

Hiermee wordt de som berekend van alle waarden die voldoen aan het numerieke uitdrukkingsargument.

SUM(expr)

SUMDISTINCT

 

Hiermee wordt de som berekend van alle afzonderlijke waarden die voldoen aan het numerieke uitdrukkingsargument.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

SUM(DISTINCT expr)

TOPN

 

Hiermee worden de hoogste n waarden van het uitdrukkingsargument geclassificeerd van 1 tot n, waarbij 1 overeenkomt met de hoogste numerieke waarde.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde. 'integer' is een willekeurig positief geheel getal. Geeft het maximum aantal rangen aan dat in de resultaatset wordt weergegeven, waarbij 1 de hoogste rang is.

TOPN(expr, integer)

Analysefuncties

Met behulp van analysefuncties kunt u gegevens verkennen via modellen zoals een prognose, trendlijn of cluster. U kunt ook analysefuncties slepen en neerzetten in de werkmapeditor.

U kunt ook prognoses, trendlijnen en clusters aan een werkmap toevoegen door ze te selecteren in het tabblad 'Analyses' van het gegevensvenster in de werkmapeditor. Zie voor meer informatie: Statistische analysefuncties aan visualisaties toevoegen.

Functie Voorbeeld Beschrijving Syntaxis

CLUSTER

CLUSTER((product, company), (billed_quantity, revenue), 'clusternaam', 'algorithm=k-means;numClusters=%1;maxIter=%2;useRandomSeed=FALSE;enablePartitioning=TRUE', 5, 10)

Met deze functie wordt een recordset verzameld en in groepen verdeeld op basis van een of meer invoeruitdrukkingen met behulp van k-means of hiërarchische clustering.

CLUSTER((dimension_expr1 , ... dimension_exprN), (expr1, ... exprN), output_column_name, options, [runtime_binded_options])

EVALUATE_SCRIPT

EVALUATE_SCRIPT('filerepo://obiee.Outliers.xml', 'isOutlier', 'algorithm=kmeans;id=%1;arg1=%2;arg2=%3;useRandomSeed=False;', customer_number, expected_revenue, customer_age)

Met deze functie wordt een Python-script uitgevoerd zoals is opgegeven in script_file_path, waarvoor een of meer kolommen of letterlijke uitdrukkingen als invoer dienen. De uitvoer van de functie wordt bepaald door output_column_name.

EVALUATE_SCRIPT(script_file_path, output_column_name, options, [runtime_binded_options])

FORECAST

Opbrengstenprognose per dag: voorbeeld

In dit voorbeeld wordt de opbrengstenprognose per dag geselecteerd.

FORECAST("A - Voorbeeldomzet"."Basisfeiten"."1- Opbrengsten" Target,
("A - Voorbeeldomzet"."Tijd"."T00 Kalenderdatum"),'forecast', 'numPeriods=30;predictionInterval=70;') ForecastedRevenue

Opbrengstenprognose per jaar en kwartaal: voorbeeld

In dit voorbeeld wordt de opbrengstenprognose per jaar en kwartaal geselecteerd.

FORECAST("A - Voorbeeldomzet"."Basisfeiten"."1- Opbrengsten",
("A - Voorbeeldomzet"."Tijd"."T01 Jaar" timeYear, "A - Voorbeeldomzet"."Tijd"."T02 Kwartaal" TimeQuarter),'forecast', 'numPeriods=30;predictionInterval=70;') ForecastedRevenue

Hierdoor wordt een tijdreeksmodel van de opgegeven eenheid voor de reeks gemaakt met behulp van exponentiële afvlakking (ETS), Seizoensgebonden ARIMA of ARIMA. Het resultaat van deze functie is een prognose voor een set perioden die is opgegeven met het argument numPeriods.

Hieronder ziet u ook aanvullende opties voor de functie 'FORECAST'.

FORECAST(measure, ([series]), output_column_name, opties,[runtime_binded_options])])

Hierbij geldt het volgende:

  • eenheid staat voor de eenheid voor een prognose, bijvoorbeeld opbrengstgegevens.

  • reeks staat voor tijdgranulariteit waarmee het prognosemodel wordt gebouwd. Deze reeks is een lijst met een of meer tijddimensiekolommen. Als u series weglaat, wordt de tijdgranulariteit bepaald door de query.

  • output_column_name staat voor de geldige kolomnamen prognose, laag, hoog en predictionInterval.

  • opties staat voor een lijst met strings van naamwaardeparen die door een puntkomma (;) zijn gescheiden. De waarde kan %1 ... %N bevatten. Deze opties kunnen worden opgegeven in runtime_binded_options.

  • runtime_binded_options staat voor een lijst met door komma's gescheiden kolommen en opties. Waarden voor deze kolommen en opties worden geëvalueerd en opgelost gedurende de uitvoeringstijd van elke afzonderlijke query.

Hieronder ziet u ook aanvullende opties voor de functie 'FORECAST'.

OUTLIER

OUTLIER((product, company), (billed_quantity, revenue), 'isOutlier', 'algorithm=kmeans')

Hiermee wordt een record als uitschieter geclassificeerd op basis van een of meer invoeruitdrukkingen met behulp van k-means, hiërarchische clustering of multivariate detectiealgoritmen voor uitschieters.

OUTLIER((dimension_expr1 , ... dimension_exprN), (expr1, ... exprN), output_column_name, options, [runtime_binded_options])

REGR

REGR(revenue, (discount_amount), (product_type, brand), 'fitted', '')

Met deze functie wordt een lineair model passend gemaakt en worden de passend gemaakte waarden of het passend gemaakte model geretourneerd. U kunt deze functie gebruiken om een lineaire curve passend te maken voor twee eenheden.

REGR(y_axis_measure_expr, (x_axis_expr), (category_expr1, ..., category_exprN), output_column_name, options, [runtime_binded_options])

TRENDLINE

TRENDLINE(revenue, (calendar_year, calendar_quarter, calendar_month) BY (product), 'LINEAR', 'VALUE')

Bij het weergeven van een visualisatie raadt Oracle u aan een trendlijn toe te passen met behulp van de eigenschap Statistieken toevoegen. Zie voor meer informatie: Visualisatie-eigenschappen aanpassen.

Met deze functie wordt een lineair, polynomiaal of exponentieel model passend gemaakt en worden de passend gemaakte waarden of het passend gemaakte model geretourneerd. In numeric_expr staat de Y-waarde voor de trend en in series (tijdkolommen) staat de X-waarde.

TRENDLINE(numeric_expr, ([series]) BY ([partitionBy]), model_type, result_type)

Opties voor de functie 'FORECAST' In de volgende tabel ziet u de beschikbare opties die u voor de functie FORECAST kunt gebruiken.

Naam optie Waarden Beschrijving
numPeriods Geheel getal Het aantal perioden voor de prognose.
predictionInterval 0 t/m 100, waarbij hogere waarden een hogere betrouwbaarheid aangeven Het betrouwbaarheidsniveau van de voorspelling
modelType

ETS (exponentiële afvlakking)

SeasonalArima

ARIMA

Het model voor de prognose
useBoxCox

TRUE

FALSE

Indien TRUE, gebruikt u de Box-Cox-transformatie.
lambdaValue Niet van toepassing

De parameter van de Box-Cox-transformatie

Negeer deze indien NULL of wanneer useBoxCox FALSE is.

Anders worden de gegevens getransformeerd vóór de schatting van het model.

trendDamp

TRUE

FALSE

Dit is specifiek voor het model 'Exponentiële afvlakking'.

Indien TRUE, gebruikt u de gedempte trend. Indien FALSE or NULL, gebruikt u de niet-gedempte trend.

errorType

Niet van toepassing

Dit is specifiek voor het model 'Exponentiële afvlakking'.
trendType

N (geen)

A (optelling)

M (vermenigvuldiging)

Z (automatisch geselecteerd)

Dit is specifiek voor het model 'Exponentiële afvlakking'.
seasonType

N (geen)

A (optelling)

M (vermenigvuldiging)

Z (automatisch geselecteerd)

Dit is specifiek voor het model 'Exponentiële afvlakking'.
modelParamIC

ic_auto

ic_aicc

ic_bic

ic_auto (standaardwaarde)

Het informatiecriterium (IC) dat wordt gebruikt in de modelselectie

Conversiefuncties

Met de conversiefuncties converteert u een waarde van de ene vorm naar de andere.

Functie Voorbeeld Beschrijving Syntaxis

CAST

CAST(hiredate AS CHAR(40)) FROM werknemer

Hiermee wijzigt u het gegevenstype van een uitdrukking of NULL-tekstconstante in een ander gegevenstype. U kunt bijvoorbeeld een klantnaam (het gegevenstype CHAR of VARCHAR) of geboortedatum (een datum/tijd-constante) omzetten.

CAST(expr AS type)

IFNULL

IFNULL(Verkoop, 0)

Hiermee wordt getest of een uitdrukking resulteert in een NULL-waarde. Als dit het geval is, wordt de opgegeven waarde toegewezen aan de uitdrukking.

IFNULL(expr, value)

INDEXCOL

SELECT INDEXCOL(VALUEOF (NQ_SESSION.GEOGRAPHY_LEVEL), Land, Provincie, Plaats), Opbrengsten FROM Verkoop

Gebruikt externe gegevens zodat de juiste kolom aan de aangemelde gebruiker wordt weergegeven.

INDEXCOL([integer literal], [expr1] [, [expr2], ?-])

NULLIF

SELECT e.achternaam, NullIf(e.functie_id, j.functie_id) "Oude functie-ID" FROM werknemers e, functiehistorie j WHERE e.werknemer_id = j.werknemer_id ORDER BY achternaam, "Oude functie-ID";

Hiermee worden twee uitdrukkingen vergeleken. Als de uitdrukkingen gelijk zijn, wordt NULL geretourneerd. Als de uitdrukkingen niet gelijk zijn, wordt de eerste uitdrukking geretourneerd. U kunt de tekstconstante NULL niet opgeven voor de eerste uitdrukking.

NULLIF([expression], [expression])

To_DateTime

SELECT To_DateTime ('2009-03-0301:01:00', 'yyyy-mm-dd hh:mi:ss') FROM verkoop

Hiermee worden stringconstanten met de indeling DateTime geconverteerd naar een DateTime-gegevenstype.

To_DateTime([expression], [literal])

VALUEOF

SalesSubjectArea.Customer.Region = VALUEOF("Regiobeveiliging"."REGION")

Verwijst naar de waarde van een semantische modelvariabele in een filter.

Gebruik expr-variabelen als argumenten van de functie VALUEOF. Verwijs naar statische variabelen van een semantisch model met behulp van de naam.

VALUEOF(expr)

Datum- en tijdfuncties

Met de functies voor datum en tijd worden gegevens bewerkt op basis van DATE en DATETIME.

Functie Voorbeeld Beschrijving Syntaxis

CURRENT_Date

CURRENT_DATE

Hiermee wordt de huidige datum geretourneerd.

De datum wordt bepaald door het systeem waarop Oracle BI wordt uitgevoerd.

CURRENT_DATE

CURRENT_TIME

CURRENT_TIME(3)

Hiermee wordt de huidige tijd geretourneerd met het opgegeven aantal cijfers achter de komma, bijvoorbeeld UU:MM:SS,SSS.

Als er geen argument wordt opgegeven, retourneert de functie de standaardprecisie.

CURRENT_TIME(expr)

CURRENT_TIMESTAMP

CURRENT_TIMESTAMP(3)

Hiermee wordt de huidige datum/tijdstempel geretourneerd met het opgegeven aantal cijfers achter de komma.

CURRENT_TIMESTAMP(expr)

DAYNAME

DAYNAME(Orderdatum)

Hiermee wordt de naam van de dag van de week geretourneerd voor een opgegeven datumuitdrukking.

DAYNAME(expr)

DAYOFMONTH

DAYOFMONTH(Orderdatum)

Hiermee wordt het getal geretourneerd dat overeenkomt met de dag van de maand voor een opgegeven datumuitdrukking.

DAYOFMONTH(expr)

DAYOFWEEK

DAYOFWEEK(Orderdatum)

Hiermee wordt een getal tussen 1 en 7 geretourneerd dat overeenkomt met de dag van de week voor een opgegeven datumuitdrukking. Hierbij staat de waarde 1 voor zondag, 2 voor maandag, enzovoort, tot en met 7 voor zaterdag.

DAYOFWEEK(expr)

DAYOFYEAR

DAYOFYEAR(Orderdatum)

Hiermee wordt een getal tussen 1 en 366 geretourneerd dat overeenkomt met de dag van het jaar voor een opgegeven datumuitdrukking.

DAYOFYEAR(expr)

DAY_OF_QUARTER

DAY_OF_QUARTER(Orderdatum)

Hiermee wordt een getal tussen 1 en 92 geretourneerd dat overeenkomt met de dag van het kwartaal voor de opgegeven datumuitdrukking.

DAY_OF_QUARTER(expr)

HOUR

HOUR(Order_Time)

Hiermee wordt een getal tussen 0 en 23 geretourneerd dat overeenkomt met het uur voor een opgegeven tijduitdrukking. 0 komt bijvoorbeeld overeen met 00:00 uur en 23 met 23:00 uur.

HOUR(expr)

MINUTE

MINUTE(Order_Time)

Hiermee wordt een getal tussen 0 en 59 geretourneerd dat overeenkomt met de minuut voor een opgegeven tijduitdrukking.

MINUTE(expr)

MONTH

MONTH(Order_Time)

Hiermee wordt een getal tussen 1 en 12 geretourneerd dat overeenkomt met de maand voor een opgegeven datumuitdrukking.

MONTH(expr)

MONTHNAME

MONTHNAME(Order_Time)

Hiermee wordt de naam van de maand geretourneerd voor een opgegeven datumuitdrukking.

MONTHNAME(expr)

MONTH_OF_QUARTER

MONTH_OF_QUARTER(Orderdatum)

Hiermee wordt een getal tussen 1 en 3 geretourneerd dat overeenkomt met de maand in het kwartaal voor een opgegeven datumuitdrukking.

MONTH_OF_QUARTER(expr)

NOW

NOW()

Hiermee wordt de huidige tijdstempel geretourneerd. De functie NOW is het equivalent van de functie CURRENT_TIMESTAMP.

NOW()

QUARTER_OF_YEAR

QUARTER_OF_YEAR(Orderdatum)

Hiermee wordt een getal tussen 1 en 4 geretourneerd dat overeenkomt met het kwartaal van het jaar voor een opgegeven datumuitdrukking.

QUARTER_OF_YEAR(expr)

SECOND

SECOND(Order_Time)

Hiermee wordt een getal tussen 0 en 59 geretourneerd dat overeenkomt met de seconden voor een opgegeven tijduitdrukking.

SECOND(expr)

TIMESTAMPADD

TIMESTAMPADD(SQL_TSI_MONTH, 12,Time."Orderdatum")

Hiermee wordt een opgegeven aantal intervallen toegevoegd aan een tijdstempel en wordt één tijdstempel geretourneerd.

De intervalopties zijn: SQL_TSI_SECOND, SQL_TSI_MINUTE, SQL_TSI_HOUR, SQL_TSI_DAY, SQL_TSI_WEEK, SQL_TSI_MONTH, SQL_TSI_QUARTER en SQL_TSI_YEAR.

TIMESTAMPADD(interval, expr, timestamp)

TIMESTAMPDIFF

TIMESTAMPDIFF(SQL_TSI_MONTH, Time."Orderdatum",CURRENT_DATE)

Hiermee wordt het totale aantal intervallen tussen twee tijdstempels geretourneerd.

Deze functie gebruikt dezelfde intervallen als TIMESTAMPADD.

TIMESTAMPDIFF(interval, expr, timestamp2)

WEEK_OF_QUARTER

WEEK_OF_QUARTER(Orderdatum)

Hiermee wordt een getal tussen 1 en 13 geretourneerd dat overeenkomt met de week van het kwartaal voor de opgegeven datumuitdrukking.

WEEK_OF_QUARTER(expr)

WEEK_OF_YEAR

WEEK_OF_YEAR(Orderdatum)

Hiermee wordt een getal tussen 1 en 53 geretourneerd dat overeenkomt met de week van het jaar voor de opgegeven datumuitdrukking.

WEEK_OF_YEAR(expr)

YEAR

YEAR(Orderdatum)

Hiermee wordt het jaar voor de opgegeven datumuitdrukking geretourneerd.

YEAR(expr)

Gegevensextractiefuncties

Met deze functie worden tijdstempelwaarden berekend of naar beneden afgerond op de dichtstbijzijnde opgegeven tijdsperiode, bijvoorbeeld uur, dag, week, maand of kwartaal.

U kunt de berekende tijdstempels gebruiken om gegevens te aggregeren met een andere granulariteit. Bijvoorbeeld: u kunt de functie EXTRACTDAY() toepassen op verkooporderdatums om een tijdstempel voor middernacht te berekenen op de dag dat orders worden geplaatst, zodat u de gegevens per dag kunt aggregeren.

Functie Voorbeeld Beschrijving Syntaxis

Dag extraheren

EXTRACTDAY("Orderdatum")
  • 2/22/1967 3:02:01 AM retourneert 2/22/1967 12:00:00 AM.
  • 9/2/2022 10:38:21 AM retourneert 9/2/2022 12:00:00 AM.

Retourneert een tijdstempel voor middernacht (12 AM) op de dag waarop de waarde wordt ingevoerd. Bijvoorbeeld: als de tijdstempel van de invoer 3:02:01 AM op 22 februari is, retourneert de functie de tijdstempel 12:00:00 AM op 22 februari.

EXTRACTDAY(expr)

Uur extraheren

EXTRACTHOUR("Orderdatum")
  • 2/22/1967 3:02:01 AM retourneert 2/22/1967 3:00:00 AM.
  • 6/17/1999 11:18:30 PM retourneert 6/17/1999 11:10:00 PM.

Retourneert een tijdstempel voor het begin van het uur waarin de waarde wordt ingevoerd. Bijvoorbeeld: als de tijdstempel van de invoer 11:18:30 PM is, retourneert de functie de tijdstempel 11:00:00 PM.

EXTRACTHOUR (expr)

Uur van dag extraheren

EXTRACTHOUROFDAY("Orderdatum")
  • 2014/09/24 10:58:00 retourneert 2000/01/01 10:00:00.
  • 2014/08/13 11:10:00 retourneert 2000/01/01 11:00:00

Retourneert een tijdstempel waarbij het uur waarop de waarde is ingevoerd wordt gelijkgetrokken met standaardwaarden voor jaar, maand, dag, minuten en seconden.

EXTRACTHOUROFDAY(expr)

Milliseconde extraheren

EXTRACTMILLISECOND("Orderdatum")
  • 1997/01/07 15:32:02.150 retourneert 1997/01/07 15:32:02.150.
  • 1997/01/07 18:42:01.265 retourneert 1997/01/07 18:42:01.265.
Retourneert een tijdstempel met milliseconden voor de ingevoerde waarde. Bijvoorbeeld: als de tijdstempel van de invoer 15:32:02.150 is, retourneert de functie de tijdstempel 15:32:02.150.

EXTRACTMILLISECOND(expr)

Minuut extraheren

EXTRACTMINUTE("Orderdatum")
  • 6/17/1999 11:18:00 PM retourneert 6/17/1999 11:18:00 PM.
  • 9/2/2022 10:38:21 AM retourneert 9/2/2022 10:38:00 AM.

Retourneert een tijdstempel voor het begin van de minuut waarin de waarde is ingevoerd. Bijvoorbeeld: als de tijdstempel van de invoer 11:38:21 AM is, retourneert de functie de tijdstempel 11:38:00 AM.

EXTRACTMINUTE (expr)

Maand extraheren

EXTRACTMONTH("Orderdatum")
  • 2/22/1967 3:02:01 AM retourneert 2/1/1967 12:00:00 AM.
  • 6/17/1999 11:18:00 PM retourneert 6/1/1999 12:00:00 AM.

Retourneert een tijdstempel voor de eerste dag in de maand waarin de waarde is ingevoerd. Bijvoorbeeld: als de tijdstempel van de invoer 22 februari is, retourneert de functie de tijdstempel 1 februari.

EXTRACTMONTH(expr)

Kwartaal extraheren

EXTRACTQUARTER("Orderdatum")
  • 2/22/1967 3:02:01 AM retourneert 1/1/1967 12:00:00 AM, de eerste dag van het eerste boekkwartaal.
  • 6/17/1999 11:18:00 PM retourneert 4/1/1999 12:00:00 AM, de eerste dag van het tweede boekkwartaal.

  • 9/2/2022 10:38:21 AM retourneert 7/1/2022 12:00:00 AM, de eerste dag van het derde boekkwartaal.

    Tip: gebruik QUARTER (expr) om alleen het kwartaalnummer van de geretourneerde tijdstempel te retourneren.

Retourneert een tijdstempel voor de eerste dag in het kwartaal waarin de waarde is ingevoerd. Bijvoorbeeld: als de tijdstempel van de invoer in het derde boekkwartaal is, retourneert de functie de tijdstempel 1 juli.

EXTRACTQUARTER(expr)

Seconde extraheren

EXTRACTSECOND("Orderdatum")
  • 1997/01/07 15:32:02.150 retourneert 1997/01/07 15:32:02.
  • 1997/01/07 20:44:18.163 retourneert 1997/01/07 20:44:18.

Retourneert een tijdstempel voor de ingevoerde waarde. Bijvoorbeeld: als de tijdstempel van de invoer 15:32:02.150 is, retourneert de functie de tijdstempel 15:32:02.

EXTRACTSECOND(expr)

Week extraheren

EXTRACTWEEK("Orderdatum")
  • 2014/09/24 10:58:00 retourneert 2014/09/21.

  • 2014/08/13 11:10:00 retourneert 2014/08/10.

Retourneert de datum van de eerste dag van de week (zondag) waarin de waarde is ingevoerd. Bijvoorbeeld: als de tijdstempel van de invoer woensdag 24 september is, retourneert de functie de tijdstempel zondag 21 september.

EXTRACTWEEK(expr)

Jaar extraheren

EXTRACTYEAR("Orderdatum")
  • 1967/02/22 03:02:01 retourneert 1967/01/01 00:00:00.
  • 1999/06/17 23:18:00 retourneert 1999/01/01 00:00:00.

Retourneert een tijdstempel voor 1 januari voor het jaar waarin de waarde wordt ingevoerd. Bijvoorbeeld: als de tijdstempel van de invoer in 1967 is, retourneert de functie de tijdstempel 1 januari 1967.

EXTRACTYEAR (expr)

Weergavefuncties

Weergavefuncties worden gebruikt voor de resultatenset van een query.

Functie Voorbeeld Beschrijving Syntaxis

BottomN

BottomN(Verkoop, 10)

Hiermee worden de n laagste waarden van uitdrukkingen geretourneerd, gerangschikt van laagste naar hoogste.

BottomN([NumericExpression], [integer])

FILTER

FILTER(Verkoop USING Product = 'widget')

Hiermee wordt de uitdrukking met het opgegeven vooraf geaggregeerde filter berekend.

FILTER(measure USING filter_expr)

MAVG

MAVG(Verkoop, 10)

Hiermee wordt een voortschrijdend gemiddelde berekend van de laatste n gegevensrijen in de resultatenset, met inbegrip van de huidige rij.

MAVG([NumericExpression], [integer])

MSUM

SELECT Maand, Opbrengsten, MSUM(Opbrengsten, 3) as 3_MO_SUM FROM Verkoop

Hiermee wordt een voortschrijdend totaal berekend van de laatste n gegevensrijen, met inbegrip van de huidige rij.

Het totaal voor de eerste rij is gelijk aan de numerieke uitdrukking voor de eerste rij. Het totaal van de tweede rij wordt berekend door het totaal te nemen van de eerste twee gegevensrijen, enzovoort. Wanneer de n e rij is bereikt, wordt het totaal berekend op basis van de laatste n rijen met gegevens.

MSUM([NumericExpression], [integer])

NTILE

NTILE(Verkoop, 100)

Hiermee wordt de rang van een waarde bepaald in termen van een door de gebruiker opgegeven bereik. Deze retourneert gehele getallen die een willekeurig bereik van rangen vertegenwoordigen. In het voorbeeld wordt een bereik van 1 tot 100 getoond, met de laagste verkoop = 1 en de hoogste verkoop = 100.

NTILE([NumericExpression], [integer])

PERCENTILE

PERCENTILE(Verkoop)

Hiermee wordt een percentagerang berekend voor elke waarde die voldoet aan het numerieke uitdrukkingsargument. Het bereik van de percentielrang varieert van 0 (1ste percentiel) tot 1 (100ste percentiel).

PERCENTILE([NumericExpression])

RANK

RANK(Verkoop)

Hiermee wordt de rang berekend voor elke waarde die voldoet aan het numerieke uitdrukkingsargument. Het hoogste getal krijgt de rang 1, en elke volgende rang wordt toegewezen aan het volgende gehele getal (2, 3, 4,...). Als bepaalde waarden gelijk zijn, krijgen ze dezelfde rang toegewezen (bijvoorbeeld 1, 1, 1, 4, 5, 5, 7...).

RANK([NumericExpression])

RCOUNT

SELECT maand, winst, RCOUNT(winst) FROM verkoop WHERE winst > 200

Hiermee wordt een set records als invoer genomen en wordt het aantal records geteld dat tot dusverre is gevonden.

RCOUNT([NumericExpression])

RMAX

SELECT maand, winst, RMAX(winst) FROM verkoop

Hiermee wordt een set records als invoer genomen en wordt de maximale waarde getoond op basis van het aantal records dat tot dusverre is gevonden. Het opgegeven gegevenstype moet een type zijn dat kan worden gesorteerd.

RMAX([NumericExpression])

RMIN

SELECT maand, winst, RMIN(winst) FROM verkoop

Hiermee wordt een set records als invoer genomen en wordt de minimale waarde getoond op basis van het aantal records dat tot dusverre is gevonden. Het opgegeven gegevenstype moet een type zijn dat kan worden gesorteerd.

RMIN([NumericExpression])

RSUM

SELECT maand, opbrengsten, RSUM(opbrengsten) as RUNNING_SUM FROM verkoop

Hiermee wordt een voortschrijdend totaal berekend op basis van het aantal records dat tot dusver is gevonden.

Het totaal voor de eerste rij is gelijk aan de numerieke uitdrukking voor de eerste rij. Het totaal van de tweede rij wordt berekend door het totaal te nemen van de eerste twee gegevensrijen, enzovoort.

RSUM([NumericExpression])

TOPN

TOPN(Verkoop, 10)

Hiermee worden de n hoogste waarden van uitdrukkingen geretourneerd, gerangschikt van hoogste naar laagste.

TOPN([NumericExpression], [integer])

Tips voor het gebruik van weergavefuncties

  • FILTER: wanneer u een rapport samenstelt aan de hand van een onderwerpgebied, gebruik dan opgegeven hiërarchieën in het onderwerpgebied in plaats van dat u hiërarchiekolommen direct filtert in een berekening. Kortom, als een onderwerpgebied een hiërarchie heeft voor Tijd\Boekjaar\Boekkwartaal, vermijd dan:

    filter (<measure> using fiscal_quarter = 'Q4')

    filter (<measure> using fiscal_quarter = 'Q3')

    filter (<measure> using fiscal_year = 'FY24')

Evaluatiefuncties

Evaluatiefuncties zijn databasefuncties die kunnen worden gebruikt om uitdrukkingen door te geven om geavanceerde berekeningen te krijgen.

Voor ingesloten databasefuncties kunnen een of meer kolommen zijn vereist. Binnen de functie wordt met %1 ... %N naar deze kolommen verwezen. De werkelijke kolommen moeten na de functie worden vermeld.

Functie Voorbeeld Beschrijving Syntaxis

EVALUATE

SELECT EVALUATE('instr(%1, %2)', adres, 'Gouda') FROM werknemers

Hiermee wordt de opgegeven databasefunctie, met optionele kolommen waarnaar wordt verwezen als parameters, naar de database doorgegeven voor evaluatie.

EVALUATE([string expression], [comma separated expressions])

EVALUATE_AGGR

EVALUATE_AGGR('REGR_SLOPE(%1, %2)', verkoop.hoeveelheid, markt.marktsleutel)

Hiermee wordt de opgegeven databasefunctie, met optionele kolommen waarnaar wordt verwezen als parameters, naar de database doorgegeven voor evaluatie. Deze functie is bedoeld voor aggregatiefuncties met een GROUP BY-clausule.

EVALUATE_AGGR('db_agg_function(%1...%N)' [AS datatype] [, column1, columnN])

Wiskundige functies

Door de in deze sectie beschreven wiskundige functies worden wiskundige bewerkingen uitgevoerd.

Functie Voorbeeld Beschrijving Syntaxis

ABS

ABS(Winst)

Hiermee wordt de absolute waarde van een numerieke uitdrukking berekend.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

ABS(expr)

ACOS

ACOS(1)

Hiermee wordt de arcsinus van een numerieke uitdrukking berekend.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

ACOS(expr)

ASIN

ASIN(1)

Hiermee wordt de arccosinus van een numerieke uitdrukking berekend.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

ASIN(expr)

ATAN

ATAN(1)

Hiermee wordt de arctangens van een numerieke uitdrukking berekend.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

ATAN(expr)

ATAN2

ATAN2(1, 2)

Hiermee wordt de boogtangens van y /x berekend, waarbij y de eerste numerieke uitdrukking is en x de tweede numerieke uitdrukking.

ATAN2(expr1, expr2)

CEILING

CEILING(Winst)

Hiermee wordt een niet-geheeltallige numerieke uitdrukking naar boven afgerond naar het eerstvolgende gehele getal. Als de numerieke uitdrukking resulteert in een geheel getal, retourneert de functie CEILING dat gehele getal.

CEILING(expr)

COS

COS(1)

Hiermee wordt de cosinus van een numerieke uitdrukking berekend.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

COS(expr)

COT

COT(1)

Hiermee wordt de cotangens van een numerieke uitdrukking berekend.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

COT(expr)

DEGREES

DEGREES(1)

Hiermee wordt een uitdrukking omgerekend van radialen naar graden.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

DEGREES(expr)

EXP

EXP(4)

Hiermee wordt de waarde verheven tot de opgegeven macht. Hiermee wordt e tot de macht n berekend, waarbij e het grondtal is van de natuurlijke logaritme.

EXP(expr)

ExtractBit

Int ExtractBit(1, 5)

Hiermee wordt een bit op een bepaalde positie in een geheel getal opgehaald. De functie retourneert een geheel getal van 0 of 1, wat overeenkomt met de positie van de bit.

ExtractBit([Source Number], [Digits])

FLOOR

FLOOR(Winst)

Hiermee wordt een niet-geheeltallige numerieke uitdrukking naar beneden afgerond naar het eerstvolgende gehele getal. Als de numerieke uitdrukking resulteert in een geheel getal, retourneert de functie FLOOR dat gehele getal.

FLOOR(expr)

LOG

LOG(1)

Hiermee wordt de natuurlijke logaritme van een uitdrukking berekend.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

LOG(expr)

LOG10

LOG10(1)

Hiermee wordt de logaritme met grondtal 10 van een uitdrukking berekend.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

LOG10(expr)

MOD

MOD(10, 3)

Hiermee wordt de eerste numerieke uitdrukking gedeeld door de tweede numerieke uitdrukking en het resterende gedeelte van de deling als resultaat geretourneerd.

MOD(expr1, expr2)

PI

PI()

Hiermee wordt de constante waarde pi geretourneerd.

PI()

POWER

POWER(Winst, 2)

Hiermee wordt de eerste numerieke uitdrukking verheven tot de macht die is opgegeven in de tweede numerieke uitdrukking.

POWER(expr1, expr2)

RADIANS

RADIANS(30)

Hiermee wordt een uitdrukking omgerekend van graden naar radialen.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

RADIANS(expr)

RAND

RAND()

Retourneert een pseudo-willekeurig getal tussen 0 en 1.

RAND()

RANDFromSeed

RAND(2)

Retourneert een pseudo-willekeurig getal op basis van een opgegeven waarde. Voor een opgegeven waarde wordt dezelfde set willekeurige getallen gegenereerd.

RAND(expr)

ROUND

ROUND(2.166000, 2)

Hiermee wordt een numerieke uitdrukking afgerond op n cijfers achter de komma.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

integer is een willekeurig positief geheel getal dat het aantal cijfers achter de komma aangeeft.

ROUND(expr, integer)

SIGN

SIGN(Winst)

Retourneert het volgende:

  • 1, als de numerieke uitdrukking resulteert in een positief getal.

  • -1, als de numerieke uitdrukking resulteert in een negatief getal.

  • 0, als de numerieke uitdrukking resulteert in nul.

SIGN(expr)

SIN

SIN(1)

Hiermee wordt de sinus van een numerieke uitdrukking berekend.

SIN(expr)

SQRT

SQRT(7)

Hiermee wordt de vierkantswortel van het argument van de numerieke uitdrukking berekend. De numerieke uitdrukking moet resulteren in een niet-negatief getal.

SQRT(expr)

TAN

TAN(1)

Hiermee wordt de tangens van een numerieke uitdrukking berekend.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

TAN(expr)

TRUNCATE

TRUNCATE(45.12345, 2)

Hiermee wordt een decimaal getal verkort tot het opgegeven aantal decimalen (zonder afronding).

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

integer is een willekeurig positief geheel getal dat het te retourneren aantal tekens aan de rechterkant van de decimaal aangeeft.

TRUNCATE(expr, integer)

Aggregatiefuncties uitvoeren

Met voortschrijdende aggregatiefuncties worden bewerkingen uitgevoerd op meerdere waarden om samenvattingsresultaten te maken.

Functie Voorbeeld Beschrijving Syntaxis

MAVG

 

Hiermee wordt een voortschrijdend gemiddelde berekend van de laatste n gegevensrijen in de resultatenset, met inbegrip van de huidige rij.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde. integer is een willekeurig positief geheel getal. Geeft het gemiddelde aan van de laatste n gegevensrijen.

MAVG(expr, integer)

MSUM

select maand, opbrengsten, MSUM(opbrengsten, 3) as 3_MO_SUM from onderwerp_gebied_verkoop

Hiermee wordt een voortschrijdend totaal berekend van de laatste n gegevensrijen, met inbegrip van de huidige rij.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde. integer is een willekeurig positief geheel getal. Geeft de som van de laatste n gegevensrijen aan.

MSUM(expr, integer)

RSUM

SELECT maand, opbrengsten, RSUM(opbrengsten) as RUNNING_SUM from onderwerp_gebied_verkoop

Hiermee wordt een voortschrijdend totaal berekend op basis van het aantal records dat tot dusver is gevonden.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde.

RSUM(expr)

RCOUNT

select maand, winst, RCOUNT(winst) from onderwerp_gebied_verkoop where winst > 200

Hiermee wordt een set records als invoer genomen en wordt het aantal records geteld dat tot dusverre is gevonden.

expr is een uitdrukking van een willekeurig gegevenstype.

RCOUNT(expr)

RMAX

SELECT maand, winst,RMAX(winst) from onderwerp_gebied_verkoop

Hiermee wordt een set records als invoer genomen en wordt de maximale waarde getoond op basis van het aantal records dat tot dusverre is gevonden.

expr is een uitdrukking van een willekeurig gegevenstype.

RMAX(expr)

RMIN

select maand, winst,RMIN(winst) from onderwerp_gebied_verkoop

Hiermee wordt een set records als invoer genomen en wordt de minimale waarde getoond op basis van het aantal records dat tot dusverre is gevonden.

expr is een uitdrukking van een willekeurig gegevenstype.

RMIN(expr)

Stringfuncties

Met stringfuncties kunnen diverse tekenbewerkingen worden uitgevoerd. Hiermee worden bewerkingen uitgevoerd op tekenstrings.

Functie Voorbeeld Beschrijving Syntaxis

ASCII

ASCII('a')

Converteert een enkele tekenstring naar de overeenkomstige ASCII-code, tussen 0 en 255. Als de tekenuitdrukking resulteert in meerdere tekens, wordt de ASCII-code geretourneerd die overeenkomt met het eerste teken in de uitdrukking.

expr is een willekeurige uitdrukking die resulteert in een tekenstring.

ASCII(expr)

BIT_LENGTH

BIT_LENGTH('abcdef')

Retourneert de lengte, in bits, van een bepaalde string. Elk Unicode-teken is 2 bytes lang (gelijk aan 16 bits).

expr is een willekeurige uitdrukking die resulteert in een tekenstring.

BIT_LENGTH(expr)

CHAR

CHAR(35)

Converteert een numerieke waarde tussen 0 en 255 naar de tekenwaarde die overeenkomt met de ASCII-code.

expr is een willekeurige uitdrukking die resulteert in een numerieke waarde tussen 0 en 255.

CHAR(expr)

CHAR_LENGTH

CHAR_LENGTH(Klantnaam)

Retourneert de lengte, in aantal tekens, van een bepaalde string. Lege tekens aan het begin en het einde van de string worden niet meegeteld bij het aantal tekens in de string.

expr is een willekeurige uitdrukking die resulteert in een tekenstring.

CHAR_LENGTH(expr)

CONCAT

SELECT DISTINCT CONCAT ('abc', 'def') FROM werknemer

Voegt twee tekenstrings samen.

exprs zijn uitdrukkingen die resulteren in tekenstrings, gescheiden door komma's.

Met CONCAT moet u ruwe gegevens gebruiken in plaats van opgemaakte gegevens.

CONCAT(expr1, expr2)

INSERT

SELECT INSERT('123456', 2, 3, 'abcd') FROM tabel

Voegt een opgegeven tekenstring in op de opgegeven positie in een andere tekenstring.

expr1 is een willekeurige uitdrukking die resulteert in een tekenstring. Geeft de doeltekenstring aan.

integer1 is een willekeurig positief geheel getal dat het aantal tekens weergeeft vanaf het begin van de doelstring waar de tweede string moet worden ingevoegd.

integer2 is een willekeurig positief geheel getal dat het aantal tekens in de doelstring aangeeft dat moet worden vervangen door de tweede string.

expr2 is een willekeurige uitdrukking die resulteert in een tekenstring. Geeft de tekenstring aan die in de doelstring moet worden ingevoegd.

INSERT(expr1, integer1, integer2, expr2)

LEFT

SELECT LEFT('123456', 3) FROM tabel

Retourneert het opgegeven aantal tekens vanaf de linkerkant van een string.

expr is een willekeurige uitdrukking die resulteert in een tekenstring.

integer is een willekeurig positief geheel getal dat het te retourneren aantal tekens aan de linkerkant van de string aangeeft.

LEFT(expr, integer)

LENGTH

LENGTH(Klantnaam)

Retourneert de lengte, in aantal tekens, van een bepaalde string. De lengte die wordt geretourneerd, is exclusief eventuele lege tekens aan het einde van de string.

expr is een willekeurige uitdrukking die resulteert in een tekenstring.

LENGTH(expr)

LOCATE

LOCATE('d' 'abcdef')

Retourneert de numerieke positie van een tekenstring binnen een andere tekenstring. Als de tekenstring niet wordt gevonden in de string waarin wordt gezocht, wordt met de functie een waarde van 0 geretourneerd.

expr1 is een willekeurige uitdrukking die resulteert in een tekenstring. Geeft de string aan waarnaar moet worden gezocht.

expr2 is een willekeurige uitdrukking die resulteert in een tekenstring.

Geeft de string aan waarin moet worden gezocht.

LOCATE(expr1, expr2)

LOCATEN

LOCATEN('d' 'abcdef', 3)

Retourneert net als LOCATE de numerieke positie van een tekenstring binnen een andere tekenstring. LOCATEN bevat een argument in de vorm van een geheel getal waarmee u een beginpositie kunt opgeven waar het zoeken moet starten.

expr1 is een willekeurige uitdrukking die resulteert in een tekenstring. Geeft de string aan waarnaar moet worden gezocht.

expr2 is een willekeurige uitdrukking die resulteert in een tekenstring. Geeft de string aan waarin moet worden gezocht.

integer is een willekeurig positief geheel getal (niet nul) dat de beginpositie aangeeft waar moet worden begonnen met zoeken naar de tekenstring.

LOCATEN(expr1, expr2, integer)

LOWER

LOWER(Klantnaam)

Converteert een tekenstring naar kleine letters.

expr is een willekeurige uitdrukking die resulteert in een tekenstring.

LOWER(expr)

OCTET_LENGTH

OCTET_LENGTH('abcdef')

Retourneert het aantal bytes van een bepaalde string.

expr is een willekeurige uitdrukking die resulteert in een tekenstring.

OCTET_LENGTH(expr)

POSITION

POSITION('d', 'abcdef')

Retourneert de numerieke positie van strExpr1 in een tekenuitdrukking. Als strExpr1 niet wordt gevonden, wordt met de functie 0 geretourneerd.

expr1 is een willekeurige uitdrukking die resulteert in een tekenstring. Geeft de tekenstring aan waarnaar moet worden gezocht in de doelstring. Bijvoorbeeld "d".

expr2 is een willekeurige uitdrukking die resulteert in een tekenstring. Geeft de doelstring aan waarin moet worden gezocht. Bijvoorbeeld "abcdef".

POSITION(expr1, expr2)

REPEAT

REPEAT('abc', 4)

Herhaalt een opgegeven uitdrukking n maal.

expr is een willekeurige uitdrukking die resulteert in een tekenstring.

integer is een willekeurig positief geheel getal dat het aantal malen aangeeft dat de tekenstring moet worden herhaald.

REPEAT(expr, integer)

REPLACE

REPLACE('abcd1234', '123', 'zz')

Vervangt een of meer tekens in een opgegeven tekenuitdrukking door een of meer andere tekens.

expr1 is een willekeurige uitdrukking die resulteert in een tekenstring. Dit is de string waarin tekens moeten worden vervangen.

expr2 is een willekeurige uitdrukking die resulteert in een tekenstring. Deze tweede string geeft de tekens van de eerste string aan die moeten worden vervangen.

expr3 is een willekeurige uitdrukking die resulteert in een tekenstring. Deze derde string geeft de tekens aan die in de eerste string moeten worden vervangen.

REPLACE(expr1, expr2, expr3)

RIGHT

SELECT RIGHT('123456', 3) FROM tabel

Retourneert het opgegeven aantal tekens vanaf de rechterkant van een string.

expr is een willekeurige uitdrukking die resulteert in een tekenstring.

integer is een willekeurig positief geheel getal dat het te retourneren aantal tekens aan de rechterkant van de string aangeeft.

RIGHT(expr, integer)

SPACE

SPACE(2)

Voegt spaties in.

integer is een willekeurig positief geheel getal dat het aantal in te voegen spaties aangeeft.

SPACE(expr)

SUBSTRING

SUBSTRING('abcdef' FROM 2)

Maakt een nieuwe string door het opgegeven aantal tekens uit de oorspronkelijke string te kopiëren.

expr is een willekeurige uitdrukking die resulteert in een tekenstring.

startPos is een willekeurig positief geheel getal dat het aantal tekens weergeeft vanaf het begin van de linkerkant van de string waar het resultaat moet beginnen.

SUBSTRING([SourceString] FROM [StartPostition])

SUBSTRINGN

SUBSTRING('abcdef' FROM 2 FOR 3)

Maakt net als SUBSTRING een nieuwe string door het opgegeven aantal tekens uit de oorspronkelijke string te kopiëren.

SUBSTRINGN bevat een argument in de vorm van een geheel getal waarmee u de lengte van een nieuwe string kunt opgeven (in aantal tekens).

expr is een willekeurige uitdrukking die resulteert in een tekenstring.

startPos is een willekeurig positief geheel getal dat het aantal tekens weergeeft vanaf het begin van de linkerkant van de string waar het resultaat moet beginnen.

SUBSTRING(expr FROM startPos FOR length)

TrimBoth

Trim(BOTH '_' FROM '_abcdef_')

Verwijdert tekens aan het begin en eind van een tekenstring.

char is een willekeurig teken. Als u deze specificatie weglaat (net als de verplichte enkele aanhalingstekens), wordt een leeg teken als de standaardwaarde gebruikt.

expr is een willekeurige uitdrukking die resulteert in een tekenstring.

TRIM(BOTH char FROM expr)

TRIMLEADING

TRIM(LEADING '_' FROM '_abcdef')

Verwijdert tekens aan het begin van een tekenstring.

char is een willekeurig teken. Als u deze specificatie weglaat (net als de verplichte enkele aanhalingstekens), wordt een leeg teken als de standaardwaarde gebruikt.

expr is een willekeurige uitdrukking die resulteert in een tekenstring.

TRIM(LEADING char FROM expr)

TRIMTRAILING

TRIM(TRAILING '_' FROM 'abcdef_')

Verwijdert tekens aan het eind van een tekenstring.

char is een willekeurig teken. Als u deze specificatie weglaat (net als de verplichte enkele aanhalingstekens), wordt een leeg teken als de standaardwaarde gebruikt.

expr is een willekeurige uitdrukking die resulteert in een tekenstring.

TRIM(TRAILING char FROM expr)

UPPER

UPPER(Klantnaam)

Converteert een tekenstring naar hoofdletters.

expr is een willekeurige uitdrukking die resulteert in een tekenstring.

UPPER(expr)

Systeemfuncties

Met de systeemfunctie USER worden waarden geretourneerd die betrekking hebben op de sessie. Bijvoorbeeld de gebruikersnaam waarmee u zich hebt aangemeld.

Functie Voorbeeld Beschrijving Syntaxis

DATABASE

 

Hiermee wordt de naam van het onderwerpgebied geretourneerd waarbij u bent aangemeld.

DATABASE()

USER

 

Hiermee wordt de gebruikersnaam van het semantische model geretourneerd waarbij u bent aangemeld.

USER()

Tijdreeksfuncties

Tijdreeksfuncties bieden u de mogelijkheid om gegevens te aggregeren en voorspellen op basis van tijddimensies. Zo kunt u de AGO-functie gebruiken om de opbrengsten van een jaar geleden te berekenen.

Tijddimensieleden moeten zich op of onder het niveau van de functie bevinden. Hierdoor moeten een of meer kolommen die leden op of onder het gegeven niveau uniek identificeren, in de query worden geprojecteerd.

Functie Voorbeeld Beschrijving Syntaxis

AGO

SELECT jaar_ID, AGO(verkoop, jaar, 1)

Hiermee berekent u de geaggregeerde waarde van een meting in een opgegeven periode in het verleden. Als u bijvoorbeeld de maandopbrengsten van een jaar geleden wilt berekenen, gebruikt u AGO(Revenue, Year, 1, SHIP_MONTH). Als u de kwartaalopbrengsten van het afgelopen kwartaal wilt berekenen, gebruikt u AGO(Revenue, Quarter, 1).

AGO(MEASURE, TIME_LEVEL, OFFSET)

Hierbij geldt het volgende:

  • MEASURE staat voor de eenheid om te berekenen, bijvoorbeeld de winst.
  • TIME_LEVEL staat voor het tijdsinterval. Dit moet 'Jaar', 'Kwartaal', 'Week' of 'Dag' zijn.
  • OFFSET staat voor het aantal tijdsintervallen om terug te rekenen, bijvoorbeeld '1' voor één jaar.

PERIODROLLING

SELECT maand_ID, PERIODROLLING (maandverkoop, -1, 1)

Berekent de aggregatie van een eenheid over de periode die x tijdseenheden vanaf de huidige tijd begint en y tijdseenheden vanaf de huidige tijd eindigt. Bijvoorbeeld: met PERIODROLLING kunnen de opbrengsten worden berekend voor een periode die begint in een kwartaal vóór en eindigt in een kwartaal na het huidige kwartaal.

PERIODROLLING(measure, x [,y])

Hierbij geldt het volgende:

  • MEASURE staat voor de naam van een eenheidkolom.
  • X is een geheel getal waarmee de offset vanaf het huidige tijdstip wordt aangegeven.
  • Y is een geheel getal waarmee het aantal tijdseenheden wordt aangegeven dat door de functie in de berekening wordt meegenomen.
  • HIERARCHY is een optioneel argument waarmee de naam van een hiërarchie in een tijddimensie wordt aangegeven, zoals YR, MON, DAY, en dat u wilt gebruiken om het tijdvenster te berekenen.

TODATE

SELECT jaar_ID, maand_ID, TODATE (verkoop, jaar)

Hiermee berekent u de geaggregeerde waarde van een meting vanaf het begin van een periode tot de laatste periode , bijvoorbeeld berekeningen voor jaar tot heden.

Als u bijvoorbeeld de verkoop voor jaar tot heden wilt berekenen, gebruikt u TODATE(sales, year).

TODATE(MEASURE, TIME_LEVEL)

Hierbij geldt het volgende:

  • MEASURE staat voor een uitdrukking die verwijst naar minimaal één eenheidkolom, bijvoorbeeld 'Verkoop'.
  • TIME_LEVEL staat voor het tijdsinterval. Dit moet 'Jaar', 'Kwartaal', 'Week' of 'Dag' zijn.

Constanten

U kunt constanten gebruiken om specifieke vaste datums en tijden op te nemen in werkmappen en rapporten.

Constante Voorbeeld Beschrijving Syntaxis

DATE

DATE '2026-04-09'

Hiermee maakt u een specifieke datum in een berekening of uitdrukking.

DATE 'yyyy-mm-dd'

TIME

TIME '12:00:00'

Hiermee maakt u een specifieke tijd in een berekening of uitdrukking.

TIME 'hh:mi:ss'

TIMESTAMP

TIMESTAMP '2026-04-09 12:00:00'

Hiermee maakt u een specifieke tijdstempel in een berekening of uitdrukking.

TIMESTAMP 'yyyy-mm-dd hh:mi:ss'

Typen

In uitdrukkingen kunt u gegevenstypen gebruiken, zoals CHAR, INT en NUMERIC.

Bijvoorbeeld: bij het maken van CAST-uitdrukkingen kunt u typen gebruiken om het gegevenstype van een uitdrukking of NULL-tekstconstante te wijzigen in een ander gegevenstype.