Ši pamoka suteiks jums greitą būdą, kaip gauti dabartinę datą be laiko, naudojant Oracle current_date funkciją.
„Oracle“ funkcija CURRENT_DATE
Kaip rodo pavadinimas, ši funkcija grąžina dabartinę datą, naudodama laiko juostą, nurodytą dabartinėje sesijoje.
Funkcija grąžina datos reikšmę Grigaliaus kalendoriuje, kai DATA tipas yra DATA. Sintaksė yra tokia, kaip parodyta žemiau:
DABARTINĖ DATA;
Nors tai gana paprasta funkcija, ji gali sutaupyti daugybę skaičiavimų jūsų duomenų bazėje.
Jis gali greitai įterpti datos reikšmes į stulpelį, kad galėtumėte prisijungti, kai jūsų duomenų bazėje įvyksta įterpimo, atnaujinimo arba ištrynimo komanda.
Datos reikšmę valdo laiko juosta, nustatyta dabartinėje sesijoje. „Oracle“ seanso laiko juostos reikšmė apibrėžiama parametru TIME_ZONE. Galite pakeisti šią reikšmę, kad pakeistumėte seanso laiko juostą.
Funkcijos naudojimo iliustracija
Nors funkcija paprasta ir lengvai suprantama, pateiksime keletą pavyzdžių, parodančių, kaip funkcija veikia.
PASIRINKTI CURRENT_DATE FROM dual;
Aukščiau pateikta užklausa turėtų pateikti dabartinę datą pagal pasirinktą laiko juostą kaip:
CURRENT_DATE|------------+
2023-01-01|
Datos reikšmės formatavimas
Funkcijos current_date reikšmę galite perduoti funkcijai char, kad suformatuotumėte ją norimu formatu.
Pavyzdys yra kaip parodyta:
SELECT TO_CHAR (CURRENT_DATE, 'DD-MM-MMMM') AS D FROM dual;Tokiu atveju funkcija to_char() konvertuos dabartinę datą į DD-MM-YYYY formatą, kaip parodyta:
D |----------+
2023-01-01|
Norėdami konvertuoti datą į ilgą formatą:
D |-------------------------+
2023 m. sausio 1 d., sekmadienis|
Kiti palaikomi datos formatai:
Oracle Alter Session laiko juosta
Norėdami nustatyti kitą dabartinės sesijos laiko juostą, naudokite komandą ALTER SESSION SET, kaip parodyta toliau:
ALTER SESSION SET time_zone = '-5:0';ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD HH24:MI:SS';
Tada galite pasirinkti dabartinę pasirinktos laiko juostos datą kaip:
PASIRINKTI CURRENT_DATE FROM dual;Išvestis:
CURRENT_DATE|------------+
2022-12-31|
Išvada
Naudodamiesi šiuo vadovu sužinojote, kaip naudoti „Oracle“ funkciją current_date, kad greitai gautumėte dabartinę datą iš dabartinės sesijos laiko juostos.