Saya suka @a_horse_with_no_name
, namun jika Anda tidak memiliki kendali atas koneksi, Anda dapat mengubah kueri untuk mengembalikan null
sebagai gantinya:
select
...
case when my_date_col = '0000-00-00' then null else my_date_col end as my_date_col,
...
atau opsi yang sedikit lebih singkat, tetapi hanya untuk mysql:
if(my_date_col = '0000-00-00', null, my_date_col) as my_date_col
Selain itu, disarankan untuk berhati-hati mengubah seluruh perilaku JDBC aplikasi karena Anda dapat merusak kode yang bergantung pada tanggal tersebut dikembalikan - mungkin mereka menggunakan rs.getString(i)
sebagai gantinya. Anda harus menguji regresi semua kueri lain untuk memastikannya.