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

Cara Mendapatkan Tanggal Saat Ini di Oracle

Masalah:

Anda ingin mendapatkan tanggal saat ini (tanpa waktu) di Oracle.

Solusi 1 (jika Anda tidak keberatan dengan waktu nol):

SELECT
  TRUNC(CURRENT_DATE) AS current_date
FROM dual;

Misalnya, jika Anda menjalankan kueri ini pada 16 Juni 2021, tabel hasil akan terlihat seperti ini:

tanggal_saat ini
06-16-16T00:00:00Z

Diskusi:

Oracle tidak memiliki tipe data yang hanya menyimpan tanggal tanpa waktu. Tetapi jika Anda tidak keberatan dengan angka nol sebagai pengganti waktu, Anda cukup menyimpan tanggal di DATE datatype (yang menyimpan tanggal dan waktu di Oracle). Untuk mendapatkan tanggal dan waktu saat ini sebagai DATE nilai, Anda cukup menggunakan CURRENT_DATE . Untuk menghilangkan waktu (dan memiliki angka nol), Anda perlu memotong tanggal:

SELECT
  TRUNC(CURRENT_DATE) AS current_date
FROM dual;

Solusi 2 (jika Anda hanya menginginkan tanggal dan bukan nol sebagai pengganti waktu):

SELECT
  TO_CHAR(CURRENT_DATE, 'yyyy-MM-dd') AS current_date
FROM dual;

Misalnya, Jika Anda menjalankan kueri ini pada 16 Juni 2021, tabel hasil akan terlihat seperti ini:

tanggal_saat ini
2016-06-16

Diskusi:

Untuk mendapatkan teks VARCHAR2 ketik yang menyimpan tanggal, Anda dapat menggunakan TO_CHAR() fungsi di Oracle. Anda perlu menentukan cap tanggal/waktu yang akan dikonversi sebagai argumen pertama, dan dalam format di mana Anda ingin menyimpan tanggal sebagai argumen kedua.

Karena Anda menginginkan tanggal saat ini, argumen pertama adalah CURRENT_DATE . Argumen kedua adalah pilihan Anda. Misalnya, 'yyyy-MM-dd' singkatan dari 'tahun-bulan-hari', di mana bulan adalah numerik daripada teks. Tabel di bawah ini menyajikan beberapa contoh format tanggal dan output masing-masing untuk tanggal 16 Juni 2021.

format tanggal hasil
'YYYY-MM-DD' 2016-06-16
'YYYY/MM/DD' 2016/06/16
'YYYY MM DD' 21 06 16
'DD-SEN-YYYY' 16-JUN-2021
'DD-SEN-YY' 16-JUN-21
'FMMonth DD, YYYY' 16 Juni 2021

Anda dapat membaca lebih lanjut tentang format tanggal di sini.


  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 massal dari Java ke Oracle

  2. Nilai yang dipisahkan koma ke fungsi IN di Oracle

  3. Menggunakan Dapper dengan prosedur tersimpan Oracle yang mengembalikan kursor

  4. Cara mengurangi 2 tanggal di oracle untuk mendapatkan hasilnya dalam jam dan menit

  5. Karakter escape Oracle SQL (untuk '&')