Dieser Artikel vermittelt Ihnen relevantes Wissen über Oracle. Er stellt hauptsächlich einige häufig verwendete Probleme im Zusammenhang mit Datumsfunktionen vor, darunter SYSDATE, ADD_MONTHS, LAST_DAY, TRUNC, ROUND usw. Ich hoffe, dass er für alle hilfreich ist.
Empfohlenes Tutorial: „Oracle Tutorial“
Diese Funktion hat keine Parameter und kann die aktuelle Zeit des Systems abrufen.
Fallcode:
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;
Ergebnis:
Diese Funktion hat keine Parameter und kann die aktuelle Zeit des Systems abrufen, die Zeitzoneninformationen enthält und auf Mikrosekunden genau ist.
Fallcode
select systimestamp from dual;
Ergebnis:
Diese Funktion hat keine Eingabeparameter und gibt die Datenbankzeitzone zurück.
Fallcode:
select dbtimezone from dual;
Ergebnis:
Funktion zum Hinzufügen des angegebenen Monats zum Datum:
Diese Funktion gibt die Anzahl der Monate zurück, die zum angegebenen Datum hinzugefügt wurden r Das Datum nach n. Wobei
r: das angegebene Datum.
n: Die Anzahl der zu addierenden Monate. Wenn N eine negative Zahl ist, bedeutet dies die Anzahl der zu subtrahierenden Monate.
Fallcode:
select to_char(add_months(to_date('2018-11-12', 'yyyy-mm-dd'), 1), 'yyyy-mm-dd'), to_char(add_months(to_date('2018-10-31', 'yyyy-mm-dd'), 1), 'yyyy-mm-dd'), to_char(add_months(to_date('2018-09-30', 'yyyy-mm-dd'), 1), 'yyyy-mm-dd') from dual;
Ergebnis: (Wenn das angegebene Datum der letzte Tag des Monats ist, wird der letzte Tag des neuen Monats zurückgegeben. Wenn der neue Monat weniger Tage als der angegebene Monat hat, wird das gültige Datum zurückgegeben automatisch abgerufen werden)
Gibt den letzten Tag des aktuellen Monats für das angegebene r-Datum zurück.
Fallcode:
select last_day(sysdate) from dual;
Ergebnis:
Datumsfunktion für die Woche nach dem angegebenen Datum:
Gibt das Datumszeichen (c) für die Woche nach dem zurück angegebenes R-Datum: Gibt das dem Wochentag entsprechende Datum an.
Fallcode:
select next_day(to_date('2018-11-12','yyyy-mm-dd'),'星期四') from dual;
Ergebnis:
select extract(year from timestamp '2018-11-12 15:36:01') as year, extract(month from timestamp '2018-11-12 15:36:01') as month, extract(day from timestamp '2018-11-12 15:36:01') as day, extract(minute from timestamp '2018-11-12 15:36:01') as minute, extract(second from timestamp '2018-11-12 15:36:01') as second from dual;Ergebnis:
MONTHS_BETWEEN(r1,r2)-Funktion
Diese Funktion gibt die direkten Monate des R1-Datums und des R2-Datums zurück. Wenn r1>r2, wird eine positive Zahl zurückgegeben. Wenn r1 und r2 in verschiedenen Monaten am selben Tag liegen, wird eine Ganzzahl zurückgegeben, andernfalls wird eine Dezimalzahl zurückgegeben. Wenn r1 ROUND (r[,f])-Funktion TRUNC(r[,f])-Funktion fängt das Datum r im Format f ab. Wenn f nicht ausgefüllt ist, wird das aktuelle Datum abgefangen. Oracle Learning Tutorial Das obige ist der detaillierte Inhalt vonZusammenfassung und gemeinsame Nutzung von Oracle-Datumsfunktionen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!Fallcode:
Datumsabfangfunktion
select months_between(to_date('2018-11-12', 'yyyy-mm-dd'),
to_date('2017-11-12', 'yyyy-mm-dd')) as zs, --整数
months_between(to_date('2018-11-12', 'yyyy-mm-dd'),
to_date('2017-10-11', 'yyyy-mm-dd')) as xs, --小数
months_between(to_date('2017-11-12', 'yyyy-mm-dd'),
to_date('2018-10-12', 'yyyy-mm-dd')) as fs --负数
from dual;
Ergebnis: rundet das Datum r gemäß dem Format von f. Wenn f nicht ausgefüllt ist, wird auf den nächsten Tag gerundet.
Fallcode:
select sysdate, --当前时间
round(sysdate, 'yyyy') as year, --按年
round(sysdate, 'mm') as month, --按月
round(sysdate, 'dd') as day, --按天
round(sysdate) as mr_day, --默认不填按天
round(sysdate, 'hh24') as hour --按小时
from dual;
Ergebnis: Fallcode:
Empfohlenes Tutorial: „select sysdate, --当前时间
trunc(sysdate, 'yyyy') as year, --按年
trunc(sysdate, 'mm') as month, --按月
trunc(sysdate, 'dd') as day, --按天
trunc(sysdate) as mr_day, --默认不填按天
trunc(sysdate, 'hh24') as hour --按小时
from dual;
Ergebnis: