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

Jak uzyskać nazwę dnia z daty w Oracle?

W Oracle Database możemy użyć TO_CHAR(datetime) funkcja zwracająca wartość daty i godziny, sformatowaną w określony przez nas sposób.

Możemy użyć tej funkcji, aby zwrócić nazwę dnia z daty (jak również wszelkie inne części wartości daty i godziny).

Pełna nazwa dnia

Jeśli chodzi o zwracanie nazwy dnia z daty, mamy możliwość uzyskania pełnej nazwy dnia lub jego skróconej wersji.

Aby uzyskać pełną nazwę dnia, DAY element formatu załatwia sprawę:

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

Wielkość liter

Jeśli chcemy, możemy użyć wielkich liter. To określa wielkość liter na wyjściu:

SELECT 
    TO_CHAR(DATE '2037-10-03', 'Day') AS "Day",
    TO_CHAR(DATE '2037-10-03', 'day') AS "day",
    TO_CHAR(DATE '2037-10-03', 'Dy') AS "Dy",
    TO_CHAR(DATE '2037-10-03', 'dy') AS "dy"
FROM DUAL;

Wynik:

         Day          day     Dy     dy 
____________ ____________ ______ ______ 
Saturday     saturday     Sat    sat    

Język

Język nazwy dnia jest określony jawnie za pomocą NLS_DATE_LANGUAGE parametr inicjalizacji lub niejawnie z NLS_LANGUAGE parametr inicjalizacji.

Możemy jawnie ustawić wartość NLS_LANGUAGE parametr z ALTER SESSION oświadczenie. Kiedy to robimy, niejawnie ustawia również wartość NLS_DATE_LANGUAGE parametr.

Jednak ustawienie NLS_DATE_LANGUAGE parametr nie zmienia wartości NLS_LANGUAGE parametr. Dzięki temu możemy określić inny język dla elementów formatu, które w razie potrzeby zwracają wartości pisane.

Oto przykład ustawienia NLS_DATE_LANGUAGE parametr na inny język:

ALTER SESSION SET NLS_DATE_LANGUAGE = 'GERMAN';

Wynik:

Session altered.

Teraz, kiedy zwracamy nazwę dnia z daty, jest ona zwracana w właśnie określonym języku:

SELECT 
    TO_CHAR(DATE '2037-10-03', 'DAY') AS "Full Day Name",
    TO_CHAR(DATE '2037-10-03', 'DY') AS "Short Day Name"
FROM DUAL;

Wynik:

   Full Day Name    Short Day Name 
________________ _________________ 
SAMSTAG          SA               

Język domyślny można zastąpić na poziomie funkcji trzecim parametrem, który określa język:

ALTER SESSION SET NLS_DATE_LANGUAGE = 'GERMAN';
SELECT 
    TO_CHAR(
        DATE '2037-10-03', 
        'Day', 
        'NLS_DATE_LANGUAGE = Spanish' 
    )
FROM DUAL;

Wynik:

Sábado

Istnieje wiele innych elementów formatu dostępnych do formatowania wartości daty i godziny w Oracle. Zobacz listę elementów formatu daty i godziny w Oracle, aby uzyskać pełną listę.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. INSERT with ORDER w Oracle

  2. Oracle nie rozróżnia wartości null i pustych ciągów?

  3. Czy istnieje oficjalna rekomendacja Oracle dotycząca używania jawnych złączeń ANSI JOIN w porównaniu ze złączeniami niejawnymi?

  4. Problem z przerywanym połączeniem Oracle JDBC

  5. Dodaj zbiorczo brakujące dane z poprzedniego miesiąca lub roku