Rumah >pangkalan data >Oracle >Ringkasan dan perkongsian fungsi tarikh Oracle

Ringkasan dan perkongsian fungsi tarikh Oracle

WBOY
WBOYke hadapan
2022-03-18 18:19:032428semak imbas

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.

Ringkasan dan perkongsian fungsi tarikh Oracle

Tutorial yang disyorkan: "Tutorial Oracle"

Fungsi tarikh dan masa sistem

Fungsi SYSDATE

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 SYSTIMESTAMP

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 zon waktu pangkalan data

Fungsi DBTIMEZONE

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 ADD_MONTHS(r,n)

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)

Fungsi hari terakhir dalam bulan

Fungsi LAST_DAY(r)

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:

Fungsi NEXT_DAY(r,c)

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:

Fungsi yang mengembalikan bahagian tertentu pada tarikh yang ditentukan

Fungsi EKSTRAK (masa)

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 BULAN_ANTARA(r1,r2)

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:

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;

Keputusan:

Fungsi pemintasan tarikh

BULAT(r [,f]) Fungsi

membundarkan tarikh r mengikut format f. Jika f tidak diisi, ia akan dibundarkan kepada hari terdekat.

Kod kes:

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;

Keputusan:

Fungsi TRUNC(r[,f])

Potong tarikh r dalam format f. Jika f tidak diisi, tarikh semasa akan dipintas.

Kod kes:

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;

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!

Kenyataan:
Artikel ini dikembalikan pada:csdn.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam