Oracle
 sql >> Baza danych >  >> RDS >> Oracle

2 sposoby na uzyskanie dnia z randki w Oracle

Poniżej znajdują się dwie funkcje, których można użyć do zwrócenia dnia od daty w bazie danych Oracle.

EXTRACT() Funkcja

EXTRACT(datetime) Funkcja służy do wyodrębniania różnych części daty i godziny z wartości daty i godziny. Obejmuje to dzień.

Oto przykład:

SELECT EXTRACT(DAY FROM DATE '2037-10-25')
FROM DUAL;

Wynik:

25

Jest DAY słowo kluczowe, które wyodrębnia część dnia z daty. Możemy uzyskać inne części daty, zmieniając je na odpowiednie słowo kluczowe. Na przykład YEAR , MONTH , HOUR , MINUTE itp.

Możemy również użyć funkcji z innymi wartościami datetime, takimi jak TIMESTAMP itp.

TO_CHAR(datetime) Funkcja

Możemy również użyć TO_CHAR(datetime) funkcjonować jako alternatywna metoda, aby uzyskać dzień od daty.

Ta funkcja akceptuje wartość daty i godziny lub przedziału jako swój pierwszy argument, a model formatu jako drugi argument. Funkcja następnie konwertuje wartość na typ danych VARCHAR2 w określonym formacie.

Model formatu określa format, dla którego ma zostać zwrócona wartość daty/godziny/interwału. Model formatu składa się z jednego lub więcej elementów formatu . Dzięki temu możemy starannie opracować wyniki, aby odzwierciedlić nasz pożądany format.

Jeśli chcemy tylko zwrócić dzień, możemy użyć jednego z elementów formatu do wyodrębnienia dnia.

Dzień miesiąca

Aby uzyskać dzień miesiąca (od 1-31), użyj DD element formatu:

SELECT TO_CHAR(DATE '2037-10-03', 'DD')
FROM DUAL;

Wynik:

03

Pełna nazwa dnia

Aby uzyskać pełną nazwę dnia, użyj DAY :

SELECT TO_CHAR(DATE '2037-10-03', 'DAY')
FROM DUAL;

Wynik:

SATURDAY

Krótka nazwa dnia

Aby uzyskać skróconą nazwę dnia, użyj DY :

SELECT TO_CHAR(DATE '2037-10-03', 'DY')
FROM DUAL;

Wynik:

SAT

Dzień roku

Aby uzyskać dzień roku (od 1-366), użyj DDD element formatu:

SELECT TO_CHAR(DATE '2037-10-03', 'DDD')
FROM DUAL;

Wynik:

276

Dzień tygodnia

Aby uzyskać dzień tygodnia (od 1 do 7), użyj D element formatu:

SELECT TO_CHAR(DATE '2037-10-03', 'D')
FROM DUAL;

Wynik:

6

Ten element formatu zależy od terytorium NLS sesji. Wartość NLS_TERRITORY mojego systemu parametr to AUSTRALIA , dlatego sobota jest szóstym dniem tygodnia.

Oto, co się stanie, jeśli zmienię wartość mojego NLS_TERRITORY parametr do AMERICA i ponownie uruchom to samo zapytanie:

ALTER SESSION SET NLS_TERRITORY = 'AMERICA';
SELECT TO_CHAR(DATE '2037-10-03', 'D')
FROM DUAL;

Wynik:

7

Tym razem sobota jest siódmym dniem tygodnia.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dowiedz się, jak wykonać procedurę w Toad For Oracle

  2. Przyspiesz to_sql() podczas zapisywania Pandas DataFrame do bazy danych Oracle przy użyciu SqlAlchemy i cx_Oracle

  3. Odpowiednie narzędzia sprawiają, że strojenie działa szybko

  4. Dynamiczna partycja tabeli Oracle

  5. varchar2(n BYTE|CHAR) default -> CHAR lub BYTE