Skip to content

Archives

  • januari 2022
  • december 2021
  • november 2021
  • oktober 2021
  • september 2021

Categories

  • Geen categorieën
Trend RepositoryArticles and guides
Articles

Tutorial voor Oracle DBA

On januari 1, 2022 by admin
Het formatteren van DATES in Oracle
  • Datum Functies en Operatoren.
  • SYSDATE Voorbeeld
  • CURRENT_DATE Voorbeeld
  • SYSTIMESTAMP Voorbeeld
  • DATUM FORMAT MODELLEN
  • TO_DATE Voorbeeld
  • ADD_MONTHS
  • MONTHS_BETWEEN
  • LAST_DAY
  • NEXT_DAY
  • EXTRACT

Datum Functies en Operatoren.

Om de systeemdatum en -tijd te zien gebruikt u de volgende functies :

CURRENT_DATE :geeft de huidige datum in de sessietijdzone terug, in een waarde in de Gregoriaanse kalender van het datatype
DATE
SYSDATE :geeft de huidige datum en tijd terug.
SYSTIMESTAMP :De functie SYSTIMESTAMP geeft de systeemdatum terug, inclusief fractionele seconden en tijdzone
van de database. Het retourneertype is TIMESTAMP MET TIJDZONE.

SYSDATE Voorbeeld

Om de huidige systeemdatum en -tijd te zien geeft u de volgende query.

select sysdate from dual;
SYSDATE
——-
8-AUG-03

Het formaat waarin de datum wordt weergegeven hangt af van de parameter NLS_DATE_FORMAT.

Zet bijvoorbeeld de NLS_DATE_FORMAT op het volgende formaat

alter session set NLS_DATE_FORMAT=’DD-MON-YYY HH:MIpm’;

Geef dan het volgende statement

select sysdate from dual;
SYSDATE
——————
8-AUG-2003 03:05pm

De standaardinstelling van NLS_DATE_FORMAT is DD-MON-YY

CURRENT_DATE Voorbeeld

Om de huidige systeemdatum en -tijd met tijdzone te zien, gebruikt u de functie CURRENT_DATE

ALTER SESSION SET TIME_ZONE = ‘-4:0’;
ALTER SESSION SET NLS_DATE_FORMAT = ‘DD-MON-YYYY HH24:MI:SS’;
SELECT SESSIONTIMEZONE, CURRENT_DATE FROM DUAL;
SESSIONTIMEZONE CURRENT_DATE
————— ——————–
-04:00 22-APR-2003 14:15:03
ALTER SESSION SET TIME_ZONE = ‘-7:0’;
SELECT SESSIONTIMEZONE, CURRENT_DATE FROM DUAL;
SESSIONTIMEZONE CURRENT_DATE
————— ——————–
-07:00 22-APR-2003 09:15:33

SYSTIMESTAMP Voorbeeld

Om de huidige systeemdatum en -tijd te zien met fractionele seconden met tijdzone geef je het volgende statement

select systimestamp from dual;
SYSTIMESTAMP
——————————-
22-APR-03 08.38.55.538741 AM -07:00

DATUM FORMAT MODELLEN

Om de datum in een andere format string te vertalen kunt u de TO_CHAR functie met datum format gebruiken. Om bijvoorbeeld de huidige dag te zien, kunt u de volgende query geven

Select to_char(sysdate,’DAY’) “Today” FROM DUAL;
DAG
——-
THURSDAY

Om een tekenwaarde, die in een ander formaat dan het standaard datumformaat is, in een datumwaarde te vertalen kun je de functie TO_DATE met datumformaat gebruiken

Zoals dit “DAY” formaat model zijn er vele andere datumformaat modellen beschikbaar in Oracle. De volgende tabel geeft een lijst van datum formaat modellen.

FORMAT

MEENING

D

Dag van de week

DD

Dag van de maand

DD

Dag van het jaar

DAG

Volledige dag voor bijv. ‘Maandag’, ‘Dinsdag’, ‘Woensdag’

DAG

Dag in drie letters voor bijv. ‘MA’, ‘TUE’,’VRI’

W

Week van de maand

W

Week van het jaar

MM

Maand in twee cijfers (1-Jan, 2-Feb,…12-dec)

MON

Maand in drie cijfers zoals “Jan”, “Feb”, “Apr”

MONTH

Volledige maand zoals “januari”, “februari”, “april”

RM

Maand in Romeinse karakters (I-XII, I-Jan, II-Feb,….XII-Dec)

Q

Kwartaal van de maand

Y

Laatste twee cijfers van het jaar.

JJJ

Volledig jaar

JAAR

Jaar in woorden zoals “Negentien Negenennegentig”

HH

Uren in 12-uurs indeling

HH12

Uren in 12-uurs indeling

HH24

Uren in 24-uurs indeling

MI

Minuten

SS

Seconden

FF

Fractionele Seconden

SSSSS

Milliseconden

J

Juliaanse Dag i.Dagen sinds 1-Jan-4712 v. Chr. tot en met datum

RR

Als het jaar kleiner is dan 50, gaat u ervan uit dat het jaar de 21e eeuw is. Als het jaartal hoger is dan 50, wordt ervan uitgegaan dat het jaartal in de 20e eeuw ligt.

suffixen

TH

Retourneert th, st, rd of nd overeenkomstig het leidende nummer zoals 1st , 2e 3e 4e

SP

Spelt het voorloopgetal

AM of PM

Geeft AM of PM terug volgens de tijd

SPTH

Geeft gespeld rangtelwoord terug. Voor. Voorbeeld Eerste, Vierde

Voorbeeld om de datum van vandaag in het volgende formaat te zien

Vrijdag, 7 maart, 2014

Geef het volgende statement

select to_char(sysdate,’Day, ddth Month, yyyy’) “Today” uit dual;

TODAY
————————
Friday, 7th March, 2014

U wilt bijvoorbeeld de aanstellingsdata van alle werknemers in het volgende formaat zien

Friday, 8th August, 2003

Geef dan de volgende query.

select to_char(hire_date,’Day, ddth Month, yyyy’) from emp;

TO_DATE Voorbeeld

To_Date functie wordt gebruikt om strings om te zetten in datumwaarden. U wilt bijvoorbeeld zien wat de dag was op 15-aug-1947. Gebruik de functie to_date om eerst de tekenreeks om te zetten in een datumwaarde en geef deze waarde dan door aan de functie to_char om de dag te extraheren.

select to_char(to_date(’15-aug-1947′,’dd-mon-yyyy’),’Day’)
from dual;
TO_CHAR(
——–
Vrijdag

Om te zien hoeveel dagen er sinds 15-aug-1947 zijn verstreken, geef je de volgende query

select sysdate-to_date(’15-aug-1947′,’dd-mon-yyyy’) from dual;

Nu willen we zien welke datum over 45 dagen zal vallen

select sysdate+45 from dual;
SYSDATE
——-
06-JUN-2003

ADD_MONTHS

Om te zien welke datum over 6 maanden plaatsvindt, kunnen we de functie ADD_MONTHS gebruiken

Selecteer ADD_MONTHS(SYSDATE,6) uit dual;
ADD_MONTHS
———-
22-OCT-2003

MONTHS_BETWEEN

Om te zien hoeveel maanden er sinds een bepaalde datum zijn verstreken, gebruikt u de functie MONTHS_BETWEEN.
Voorbeeld, om te zien hoeveel maanden er sinds 15-aug-1947 zijn verstreken, geeft u de volgende query.

select months_between(sysdate,to_date(’15-aug-1947′))
from dual;
Months
——
616.553

Om de decimale waarde te elimineren gebruikt u de functie truncate

select trunc(months_between(sysdate,to_date(’15-aug-1947′)))
from dual;
Maanden
——
616

LAST_DAY

Om de laatste datum van de maand van een gegeven datum te zien, gebruikt u de functie LAST_DAY.

select LAST_DAY(sysdate) from dual;
LAST_DAY
——–
31-AUG-2003

NEXT_DAY

Om te zien wanneer een bepaalde dag de volgende is, gebruik de NEXT_DAY functie.
Voorbeeld om te zien wanneer de volgende zaterdag komt, geef de volgende query

select next_day(sysdate) from dual;
NEXT_DAY
———–
09-AUG-2003

EXTRACT

Een EXTRACT datetime functie extraheert en retourneert de waarde van een gespecificeerd datetime veld uit een datetime of interval waarde expressie. Wanneer u een TIMEZONE_REGION of TIMEZONE_ABBR (afkorting) extraheert, is de geretourneerde waarde een tekenreeks die de juiste tijdzonenaam of -afkorting bevat

De syntaxis van de functie EXTRACT is

EXTRACT ( YEAR / MONTH / WEEK / DAY / HOUR / MINUTE / TIMEZONE FROM DATE)
Example
Hieronder ziet u het gebruik van de functie EXTRACT om het jaar uit de huidige datum te extraheren.
select extract(jaar uit sysdate) from dual;
EXTRACT
——-
2003

Geef een antwoord Antwoord annuleren

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Archieven

  • januari 2022
  • december 2021
  • november 2021
  • oktober 2021
  • september 2021

Meta

  • Inloggen
  • Berichten feed
  • Reacties feed
  • WordPress.org
  • DeutschDeutsch
  • NederlandsNederlands
  • SvenskaSvenska
  • DanskDansk
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • RomânăRomână
  • PolskiPolski
  • ČeštinaČeština
  • MagyarMagyar
  • SuomiSuomi
  • 日本語日本語

Copyright Trend Repository 2022 | Theme by ThemeinProgress | Proudly powered by WordPress