Fungsi PostgreSQL yang sama dengan NVL milik Oracle
Bagi anda yang sering berkutat dengan Oracle, pasti sering membutuhkan fungsi NVL dalam operasi query. NVL sangat berguna untuk operasi view data. Sayangnya fungsi ini tidak ada di PostgreSQL (atau saya yang tidak tahu?). Setelah berpusing-pusing ria dengan manual PostgreSQL, akhirnya saya menemukan satu fungsi yang memiliki perilaku sama. Yaitu fungsi COALESCE.
Deskripsi dari manual adalah sebagai berikut :
The COALESCE function returns the first of its arguments that is not null. Null is returned only if all arguments are null. It is often used to substitute a default value for null values when data is retrieved for display, for example:
SELECT COALESCE(description, short_description, '(none)') ...Like a CASE expression, COALESCE will not evaluate arguments that are not needed to determine the result; that is, arguments to the right of the first non-null argument are not evaluated. This SQL-standard function provides capabilities similar to NVL and IFNULL, which are used in some other database systems.
Pengalaman di Ruang Sidang
Kemarin, senin(27/07/06) aku ke Pengadilan Negeri Surabaya untuk mengurus surat tilang, karena lupa menyalakan lampu. Belum sampai di depan gerbang masuk, aku sudah dicegat oleh para calo persidangan. Aku tidak menghiraukan mereka, lalu langsung masuk ke tempat parkir, untuk kemudian menuju loket tilang (yang hanya berjarak 5 - 10 langkah). Lagi-lagi aku didatangi calo yang sekali lagi-lagi aku abaikan. Diloket itu aku tunjukkan berkas tilang yang aku terima, lalu orang di loket itu mengatakan untuk menuju ruang sidang disisi tengah gedung utama untuk disidang jam 9. Aku masuk untuk kemudian diterima oleh petugas yang berjaga di pintu masuk. Oleh petugas aku ditanya surat tilangku, aku berikan, kemudian dia berkata, �Mas, silahkan tunggu dulu, nanti akan diproses dan selesai sekitar jam 11?. DEG!!!, dalam hati aku mulai ragu, kok beda waktunya bisa terpaut 2 jam antara loket depan dan petugas ini. Karena curiga aku bertanya �Lho, tadi didepan katanya jam 9?�, kemudian dijawab sambil menunjuk nomor tilang punyaku (18792271) �Iya, tapi nomor urut sampeyan besar�. DUENG!!! dalam hati aku mikir, gila juga ini orang. Di depan pintu masuk ditulis besar-besar �JANGAN MENGURUS SURAT TILANG ANDA MELALUI CALO� (atau seperti itulah tulisannya, maklum ga� terlalu ingat). Tetapi aku hampir jadi korban calo dari orang dalam pengadilan sendiri. Akhirnya aku ambil lagi surat tilang dari dia dan langsung masuk ke gedung utama.
Menunggu sidang buka jam 9, ternyata tidak terasa terlalu lama, karena aku habiskan dengan keliling gedung pengadilan, meilhat-lihat fasilitas yang ada. Jam setengah 9 ruang sidang dibuka, lalu jam 9 lebih 10 menit sidang dimulai. Petugas kemudian membacakan peraturan yang hanya terdengar sekilas :
- Peserta sidang akan dipanggil per 100 orang urut berdasarkan 3 digit terakhir dari surat tilang-nya
- Peserta yang mewakilkan sidang harus membawa surat kuasa.
Karena aku nomor urut 271, berarti akan maju di pemanggilan ke-3.
Ketika tiba giliranku, aku menyerahkan surat tilang, kemudian dipanggil. Hakim bertanya apa kesalahannya, kemudian aku jawab �Lupa menyalakan lampu pak!�, �Oh, ya sudah denda Rp 20.000,- ya�, �Iya, terima kasih pak�, aku maju mengambil surat tilang yang sudah ditandai selesai sidang untuk dibawa ke loket yang pertama kali aku datangi tadi, untuk membayar denda dan mengambil SIM yang ditahan. Sampai loket aku menyerahkan surat tilang tadi, kemudian menunggu sebentar sampai dipanggil kembali. Saat dipanggil aku bayar Rp 20.000,- ditambah denda Rp 500,-, SIM aku dikembalikan dan urusan selesai. Kulihat jam ternyata belum jam 9:45. Tunggu dulu, jadi prosesnya cuman sekitar 30 menit??? Sialan itu tukang calo, ngapain coba ikut calo yang katanya bisa habis sekitar 40 - 50 ribuan dan baru selesai jam 11 kalau proses sendiri bisa selesai sebentar dan biaya yang lebih murah!!!.





