Kesalahan yang Anda dapatkan adalah karena Anda melakukan TO_DATE
pada kolom yang sudah berisi tanggal, dan Anda menggunakan format mask yang berbeda dengan nls_date_format
Anda parameter[1] atau karena kolom event_occurrence berisi data yang bukan angka.
Anda perlu a) mengoreksi kueri Anda sehingga tidak menggunakan TO_DATE pada kolom tanggal, dan b) mengoreksi data Anda, jika event_occurrence seharusnya hanya berupa angka.
Dan perbaiki tipe data kolom tersebut untuk memastikan Anda hanya dapat menyimpan angka.
[1] Apa yang dilakukan Oracle saat Anda melakukannya:TO_DATE(date_column, non_default_format_mask)
adalah:TO_DATE(TO_CHAR(date_column, nls_date_format), non_default_format_mask)
Umumnya, nls_date_format
default parameter diatur ke dd-MON-yy
, jadi dalam kueri Anda, yang mungkin terjadi adalah kolom tanggal Anda diubah menjadi string dalam format dd-MON-yy, dan Anda kemudian mengembalikannya ke tanggal menggunakan format MMDD. String tidak dalam format ini, jadi Anda mendapatkan kesalahan.