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

Oracle membandingkan dua tanggal yang berbeda

String input Anda di to_date() fungsi tidak cocok dengan pola Anda. Nilai berisi - sebagai pembatas, namun dalam pola Anda menggunakan / :

Jika Anda menyelaraskan format input dan pola, ini akan berfungsi:

datetrx <= to_date('2014-07-16 00:00:00','yyyy-mm-dd hh24:mi:ss')

Saya pribadi lebih suka literal cap waktu ANSI daripada to_date() berfungsi karena portabel dan lebih sedikit mengetik:

datetrx <= timestamp '2014-07-16 00:00:00'

Perhatikan format string yang disediakan di sini adalah selalu format ISO.

Catatan tambahan:
Semua "format" yang Anda lihat saat melihat nilai di kolom daterx diterapkan oleh klien SQL yang Anda gunakan untuk menampilkan data tersebut (SQL*Plus, SQL Developer, ...).

Nilai itu sendiri disimpan tanpa format di server. Memformat DATE nilainya selalu dilakukan oleh klien SQL (atau aplikasi Anda):



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara memeriksa apakah ada prosedur tersimpan?

  2. Permintaan dinamis PLSQL

  3. oci_bind_by_name dan to_date PHP/OCI/Oracle

  4. Kesalahan pengidentifikasi tidak valid untuk v_MONTH dalam kueri dinamis

  5. Konversi Unixtime ke Datetime SQL (Oracle)