Rumah >pangkalan data >Oracle >Ringkasan dan perkongsian fungsi tarikh Oracle
Artikel ini membawa anda pengetahuan yang berkaitan tentang Oracle, yang terutamanya memperkenalkan beberapa isu berkaitan fungsi tarikh yang biasa digunakan, termasuk SYSDATE, ADD_MONTHS, LAST_DAY, TRUNC, ROUND, dll. Saya harap Bermanfaat kepada semua orang.
Tutorial yang disyorkan: "Tutorial Oracle"
Fungsi ini tidak mempunyai parameter dan boleh mendapatkan masa semasa sistem.
Kod kes:
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;
Keputusan:
Fungsi Fungsi ini tidak mempunyai parameter dan boleh mendapatkan masa semasa sistem, yang mengandungi maklumat zon waktu dan tepat kepada mikrosaat.
Kod kes
select systimestamp from dual;
Keputusan:
Fungsi ini tidak mempunyai parameter input dan mengembalikan zon waktu pangkalan data.
Kod kes:
select dbtimezone from dual;
Keputusan:
Tambah fungsi bulan yang dinyatakan pada tarikh:
Fungsi ini mengembalikan tarikh selepas menambah bilangan bulan n pada tarikh r yang ditentukan. Di mana
r: tarikh yang dinyatakan.
n: Bilangan bulan yang perlu ditambah Jika N ialah nombor negatif, ia bermakna bilangan bulan yang perlu ditolak.
Kod kes:
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;
Keputusan: (Jika tarikh yang dinyatakan ialah hari terakhir bulan itu, hari terakhir yang dikembalikan pada bulan baharu juga merupakan hari terakhir bulan baharu . Jika bulan baharu kurang daripada tarikh bulan yang ditentukan, tarikh sah akan dilaraskan semula secara automatik)
Mengembalikan hari terakhir bulan semasa untuk tarikh r yang ditentukan.
Kod kes:
select last_day(sysdate) from dual;
Keputusan:
Fungsi tarikh seminggu selepas tarikh yang ditentukan:
mengembalikan tarikh yang sepadan dengan aksara tarikh r (c: menunjukkan hari dalam minggu) dalam minggu selepas tarikh R yang ditentukan.
Kod kes:
select next_day(to_date('2018-11-12','yyyy-mm-dd'),'星期四') from dual;
Keputusan:
mengembalikan tahun, bulan, hari dan bahagian tarikh dibahagikan pada masa yang ditentukan.
Kod kes:
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;
Keputusan:
Kembalikan bilangan bulan antara dua tarikh:
Fungsi ini mengembalikan bulan langsung tarikh r1 dan tarikh r2. Apabila r1>r2, nombor positif dikembalikan Jika r1 dan r2 berada pada hari yang sama dalam bulan yang berbeza, integer dikembalikan, jika tidak, perpuluhan dikembalikan. Apabila r1 Kod kes: Keputusan: membundarkan tarikh r mengikut format f. Jika f tidak diisi, ia akan dibundarkan kepada hari terdekat. Kod kes: Keputusan: Potong tarikh r dalam format f. Jika f tidak diisi, tarikh semasa akan dipintas. Kod kes: Keputusan: Tutorial yang disyorkan: "Tutorial Pembelajaran Oracle" Atas ialah kandungan terperinci Ringkasan dan perkongsian fungsi tarikh Oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!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;
Fungsi pemintasan tarikh
BULAT(r [,f]) Fungsi
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;
Fungsi TRUNC(r[,f])
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;