Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Cara Mendapatkan Nama Hari dari Tanggal di Oracle

Dengan Oracle Database, kita dapat menggunakan the TO_CHAR(datetime) berfungsi untuk mengembalikan nilai datetime, diformat dengan cara yang kita tentukan.

Kita dapat menggunakan fungsi ini untuk mengembalikan nama hari dari tanggal (serta bagian lain dari nilai datetime).

Nama Lengkap Hari

Saat mengembalikan nama hari dari tanggal, kami memiliki opsi untuk mendapatkan nama hari penuh atau versi singkatnya.

Untuk mendapatkan nama hari penuh, DAY elemen format berhasil:

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

Hasil:

SATURDAY

Nama Hari Singkat

Untuk mendapatkan nama hari yang disingkat, gunakan DY :

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

Hasil:

SAT

Kapitalisasi

Kita bisa menggunakan huruf kapital jika kita mau. Ini menentukan kapitalisasi output:

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;

Hasil:

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

Bahasa

Bahasa nama hari ditentukan baik secara eksplisit dengan NLS_DATE_LANGUAGE parameter inisialisasi atau secara implisit dengan NLS_LANGUAGE parameter inisialisasi.

Kita dapat secara eksplisit mengatur nilai NLS_LANGUAGE parameter dengan ALTER SESSION penyataan. Saat kami melakukan ini, ini juga secara implisit menetapkan nilai NLS_DATE_LANGUAGE parameter.

Namun, menyetel NLS_DATE_LANGUAGE parameter tidak mengubah nilai NLS_LANGUAGE parameter. Ini memungkinkan kami untuk menentukan bahasa yang berbeda untuk elemen format yang mengembalikan nilai yang dieja, jika diperlukan.

Berikut adalah contoh pengaturan the NLS_DATE_LANGUAGE parameter ke bahasa lain:

ALTER SESSION SET NLS_DATE_LANGUAGE = 'GERMAN';

Hasil:

Session altered.

Sekarang, ketika kami mengembalikan nama hari dari sebuah tanggal, itu dikembalikan dalam bahasa yang baru saja kami tentukan:

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;

Hasil:

   Full Day Name    Short Day Name 
________________ _________________ 
SAMSTAG          SA               

Bahasa default dapat diganti pada tingkat fungsi dengan parameter ketiga yang menentukan bahasa:

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

Hasil:

Sábado

Ada banyak lagi elemen format yang tersedia untuk memformat nilai datetime di Oracle. Lihat Daftar Elemen Format Datetime di Oracle untuk daftar lengkapnya.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ekspresi Reguler Oracle. Rentang Berbahaya

  2. Pengujian unit untuk PL/SQL

  3. Apa perbedaan antara AS dan IS dalam prosedur tersimpan Oracle?

  4. Bagaimana cara menghitung jumlah kemunculan karakter dalam nilai Oracle varchar?

  5. Cara Menghitung Perbedaan Antara Dua Timestamp di Oracle