Päivämäärän ja ajan funktiot

Päivän ja kelloajan funktiot käsittelevät tietoa DATE- ja DATETIME-parametrien perusteella.

Funktio Esimerkki Kuvaus Syntaksi

CURRENT_Date

CURRENT_DATE

Palauttaa nykyisen päivämäärän.

Päivämäärä määritetään järjestelmässä, jossa Oracle BI on käytössä.

CURRENT_DATE

CURRENT_TIME

CURRENT_TIME(3)

Palauttaa nykyisen ajan määritetyn numeromäärän tarkkuudella, esimerkiksi HH:MM:SS.SSS

Jos argumenttia ei ole määritetty, funktio palauttaa oletusarvoisen tarkkuuden.

CURRENT_TIME(lauseke)

CURRENT_TIMESTAMP

CURRENT_TIMESTAMP(3)

Palauttaa nykyisen päivämäärän/aikaleiman määritetyn numeromäärän tarkkuudella.

CURRENT_TIMESTAMP(lauseke)

DAYNAME

DAYNAME(Tilauspäivämäärä)

Palauttaa määritetyn päivämäärälausekkeen mukaisen viikonpäivän nimen.

DAYNAME(lauseke)

DAYOFMONTH

DAYOFMONTH(Tilauspäivämäärä)

Palauttaa määritetyn päivämäärälausekkeen mukaisen kuukauden päivää vastaavan numeron.

DAYOFMONTH(lauseke)

DAYOFWEEK

DAYOFWEEK(Tilauspäivämäärä)

Palauttaa määritetyn päivämäärälausekkeen mukaisen viikonpäivää vastaavan numeron väliltä 1 - 7. Esimerkiksi 1 vastaa aina sunnuntaita, 2 vastaa aina maanantaita, ja lauantai palauttaa arvon 7.

DAYOFWEEK(lauseke)

DAYOFYEAR

DAYOFYEAR(Tilauspäivämäärä)

Palauttaa määritetyn päivämäärälausekkeen mukaisen vuoden päivää vastaavan numeron (väliltä 1 - 366).

DAYOFYEAR(lauseke)

DAY_OF_QUARTER

DAY_OF_QUARTER(Tilauspäivämäärä)

Palauttaa määritetyn päivämäärälausekkeen mukaisen neljännesvuoden päivää vastaavan numeron (väliltä 1 - 92).

DAY_OF_QUARTER(lauseke)

HOUR

HOUR(Tilausaika)

Palauttaa määritetyn aikalausekkeen mukaisen tuntia vastaavan numeron (väliltä 1 - 23). Esimerkiksi 0 on sama kuin klo 12 ja 23 on sama kuin klo 23.

HOUR(lauseke)

MINUTE

MINUTE(Tilausaika)

Palauttaa määritetyn aikalausekkeen mukaisen minuuttia vastaavan numeron (väliltä 0 - 59).

MINUTE(lauseke)

MONTH

MONTH(Tilausaika)

Palauttaa määritetyn päivämäärälausekkeen mukaisen kuukautta vastaavan numeron (väliltä 1 - 12).

MONTH(lauseke)

MONTHNAME

MONTHNAME(Tilausaika)

Palauttaa määritetyn päivämäärälausekkeen mukaisen kuukauden nimen.

MONTHNAME(lauseke)

MONTH_OF_QUARTER

MONTH_OF_QUARTER(Tilauspäivämäärä)

Palauttaa määritetyn päivämäärälausekkeen mukaisen neljännesvuoden kuukautta vastaavan numeron (väliltä 1 - 3).

MONTH_OF_QUARTER(lauseke)

NOW

NOW()

Palauttaa nykyisen aikaleiman. NOW-funktio vastaa CURRENT_TIMESTAMP-funktiota.

NOW()

QUARTER_OF_YEAR

QUARTER_OF_YEAR(Tilauspäivämäärä)

Palauttaa määritetyn päivämäärälausekkeen mukaisen vuoden neljännesvuotta vastaavan numeron (väliltä 1 - 4).

QUARTER_OF_YEAR(lauseke)

SECOND

SECOND(Tilausaika)

Palauttaa määritetyn aikalausekkeen mukaisen sekuntia vastaavan numeron (väliltä 0 - 59).

SECOND(lauseke)

TIMESTAMPADD

TIMESTAMPADD(SQL_TSI_MONTH, 12,Time."Tilauspäivämäärä")

Lisää määritetyn määrän aikavälejä aikaleimaan ja palauttaa yksittäisen aikaleiman.

Aikavälit: SQL_TSI_SECOND, SQL_TSI_MINUTE, SQL_TSI_HOUR, SQL_TSI_DAY, SQL_TSI_WEEK, SQL_TSI_MONTH, SQL_TSI_QUARTER, SQL_TSI_YEAR

TIMESTAMPADD(väli, lauseke, aikaleima)

TIMESTAMPDIFF

TIMESTAMPDIFF(SQL_TSI_MONTH, Time."Tilauspäivämäärä",CURRENT_DATE)

Palauttaa kahden aikaleiman välisten määritettyjen aikavälien kokonaismäärän.

Käyttää samoja aikavälejä kuin TIMESTAMPADD.

TIMESTAMPDIFF(väli, lauseke, aikaleima2)

WEEK_OF_QUARTER

WEEK_OF_QUARTER(Tilauspäivämäärä)

Palauttaa määritetyn päivämäärälausekkeen mukaisen neljännesvuoden viikkoa vastaavan numeron (väliltä 1 - 13).

WEEK_OF_QUARTER(lauseke)

WEEK_OF_YEAR

WEEK_OF_YEAR(Tilauspäivämäärä)

Palauttaa määritetyn päivämäärälausekkeen mukaisen vuoden viikkoa vastaavan numeron (väliltä 1 - 53).

WEEK_OF_YEAR(lauseke)

YEAR

YEAR(Tilauspäivämäärä)

Palauttaa määritetyn päivämäärälausekkeen mukaisen vuoden.

YEAR(lauseke)

Vihjeitä päivämääräfunktioiden käyttöön

Tässä on joitakin vihjeitä, joiden avulla saat parhaita mahdollisia tuloksia käyttäessäsi työkirjojen päivämääräfunktioita tilikausien laskentaan, merkkijonojen muuntamiseen päivämääriksi, tietyn aikavyöhykkeen päivämäärien ja kellonaikojen näyttämiseen ja erojen laskentaan tietyllä aikavälillä.

Tilivuoden, -vuosineljänneksen ja -kuukauden laskenta:

Aihealueilla on tavallisesti aikadimensio, joten voit käyttää ennalta määritettyjä jaksoja, kuten tilivuosineljännestä, tilikuukautta ja tiliviikkoa. Jos käytössäsi on vain päivämääräkenttä, voit laskea nämä jaksot itse päivämääräfunktioiden avulla.

Tässä esimerkissä lasketaan tilivuosineljännes:

'FY'||cast(YEAR(TIMESTAMPADD(SQL_TSI_MONTH, 7,<date field>)) as char)||'Q'||cast(QUARTER(TIMESTAMPADD(SQL_TSI_MONTH, 7,<same date field>)) as char)

Tässä esimerkissä lasketaan tilivuosi ja -kuukausi:

'FY'||cast(YEAR(TIMESTAMPADD(SQL_TSI_MONTH, 7,<date field>)) as char)||cast(MONTHNAME(<same date field>) as char)

Huomautuksia:

  • || yhdistää arvoja.
  • cast (xxx(date) as char) poimii osan päivämääräkentästä.
  • TIMESTAMPADD lisää jaksoja päivämäärään tai poistaa niitä siitä. Tässä esimerkissä käytetään parametrin arvoa SQL_TSI_MONTH kuukausien lisäämiseen.

Edellä mainitut laskutoimitukset toimivat hyvin taulukoissa, mutta kun niitä käytetään suodattimissa, palautettujen arvojen välinen välistys saattaa näyttää oudolta. Käytä siinä tapauksessa selkeämpää, mutta monimutkaisempaa laskutoimitusta, joka perustuu näihin esimerkkeihin:

'FY'||evaluate ('to_char(%1,%2)'as char,(EVALUATE('add_months(%1,%2)' as date,<date field>,7)),'YY')||'-Q'||evaluate ('to_char(%1,%2)'as char,(EVALUATE('add_months(%1,%2)' as date,<same date field>,7)),'Q')
'FY'||evaluate ('to_char(%1,%2)'as char,(EVALUATE('add_months(%1,%2)' as date,<date field>,7)),'YY')||'-'||evaluate ('to_char(%1,%2)'as char,<same date field>,'MON')

Merkkijonon muuntaminen päivämääräksi:

Oracle Analytics profiloi tietosi ja antaa rikastamissuosituksia päivämäärien poimintaa ja muuntoa varten. Jos haluat muuntaa merkkijonon päivämääräksi itse, käytä näitä vihjeitä.
  • Siirry työkirjan suunnitteluohjelman Tiedot-ruudussa muunnettavaan sarakkeeseen, napsauta hiiren kakkospainiketta ja valitse Muunna päivämääräksi. Konfiguroi päivämäärä ja valitse Lisää vaihe.

  • Siirry työkirjan suunnitteluohjelman Tiedot-ruudussa muunnettavaan sarakkeeseen, napsauta hiiren kakkospainiketta ja valitse Muokkaa. Konfiguroi päivämäärä ja valitse Lisää vaihe.

    Lisää tekstiruutuun, joka sisältää sarakkeesi nimen sinisellä kirjoitettuna, To_DateTime( ennen sarakkeen nimeä. Lisää käytettävä päivämäärän muoto sarakkeen nimen jälkeen, lisää perään ) ja valitse Lisää vaihe.
    Kohteen GUID-ADBD035B-A62A-4DED-8768-553365BAABFE-default.png kuvaus seuraa
    .png kuvaus

    Kun luot päivämääränmuuntofunktion Muokkaa-valintaa käyttäen, voit myös käsitellä yksi- tai kaksinumeroisia sarakearvoja argumentin Allow_Variable_Digits avulla sekä hylätä rivit, jotka eivät vastaa vaadittua kaavaa, argumentin Null_On_Error avulla. Katso myös REPLACE ja CAST, jotka ovat vaihtoehtoisia tapoja käsitellä tietoja, jotka eivät vastaa vaadittua kaavaa.

    To_DateTime()-funktion sijaan arvon tietotyyppiä voidaan vaihtaa myös CAST()-funktiolla. Esimerkki: CAST(SalesDate AS DATE).

    Käytä lisäksi Korvaa-valintaa. Siirry työkirjan suunnitteluohjelman Tiedot-ruudussa muunnettavaan sarakkeeseen, napsauta hiiren kakkospainiketta ja valitse Korvaa. Konfiguroi haluamasi korvaustyyppi ja valitse Lisää vaihe.

Päivämäärä- ja aikakentän näyttäminen tietyllä aikavyöhykkeellä:

Käytä NEW_TIME-funktiota tietokannassa yhdessä EVALUATE-funktion kanssa. Esimerkki:

evaluate ('new_time(%1,%2,%3)' as char, "DV - Pipeline and Forecast"."Opportunity"."Last Updated Date",'GMT','AST')

Varmista, että päivämääräkenttä sisältää aikakomponentin.

Eron laskenta tietyllä aikavälillä:

Voit näyttää tämänhetkisen ja eilisen tilanteen välisen eron numeroina ja prosentteina luomalla laskutoimituksia näiden esimerkkien perusteella:
  • Mittarin laskenta eiliseen päivään asti: filter (Measure using date <= TIMESTAMPADD(SQL_TSI_DAY,-1,CURRENT_DATE))
  • Eron laskenta: Measure - filter (Measure using date <= TIMESTAMPADD(SQL_TSI_DAY,-1,CURRENT_DATE))
  • Eron prosenttiosuuden laskenta: 1-(filter (Measure using date <= TIMESTAMPADD(SQL_TSI_DAY,-1,CURRENT_DATE))/Measure display as percentage

Huomautuksia:

  • Näissä esimerkeissä käytetään SQL_TSI_DAY-funktiota. Voit kuitenkin käyttää myös WEEK- ja MONTH-funktioita viikoittaisissa ja kuukausittaisissa vertailuissa.
  • Näissä esimerkeissä voidaan käyttää tavallista tai luonnollista kalenteria. Jos tarvitset tilikuukausia ja -vuosineljänneksiä, käytä laskutoimituksissa tietovarastomuuttujia TIMESTAMPADD-funktion sijaan. Voit myös yhdistää tämän Tilivuoden, -vuosineljänneksen ja -kuukauden laskenta -vihjeeseen.
  • Jotkin aihealueet sisältävät ennalta laskettuja Edellinen X -mittareita, kuten PY (edellinen vuosi) ja PQ (edellinen vuosineljännes), joiden avulla voit laskea eroja tietyllä aikavälillä.
  • Vaihtoehtoisesti voit myös käyttää seuraavia TIME SERIES -funktioita: AGO, PERIODROLLING ja TODATE. Katso kohta Aikasarjafunktiot.