Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Fungsi NVL dan COALESCE
Mengembalikan nilai ekspresi pertama yang tidak null dalam serangkaian ekspresi. Ketika nilai non-null ditemukan, ekspresi yang tersisa dalam daftar tidak dievaluasi.
NVL identik dengan COALESCE. Mereka adalah sinonim. Topik ini menjelaskan sintaks dan berisi contoh untuk keduanya.
Sintaks
NVL( expression, expression, ... )
Sintaks untuk COALESCE adalah sama:
COALESCE( expression, expression, ... )
Jika semua ekspresi nol, hasilnya adalah null.
Fungsi-fungsi ini berguna ketika Anda ingin mengembalikan nilai sekunder ketika nilai primer hilang atau null. Misalnya, kueri mungkin mengembalikan yang pertama dari tiga nomor telepon yang tersedia: ponsel, rumah, atau kantor. Urutan ekspresi dalam fungsi menentukan urutan evaluasi.
Argumen
- ekspresi
-
Ekspresi, seperti nama kolom, yang akan dievaluasi untuk status null.
Jenis pengembalian
AWS Clean Rooms menentukan tipe data dari nilai yang dikembalikan berdasarkan ekspresi input. Jika tipe data dari ekspresi input tidak memiliki tipe umum, maka kesalahan dikembalikan.
Contoh-contoh
Jika daftar berisi ekspresi integer, fungsi mengembalikan integer.
SELECT COALESCE(NULL, 12, NULL);
coalesce -------------- 12
Contoh ini, yang sama dengan contoh sebelumnya, kecuali bahwa ia menggunakan NVL, mengembalikan hasil yang sama.
SELECT NVL(NULL, 12, NULL);
coalesce -------------- 12
Contoh berikut mengembalikan tipe string.
SELECT COALESCE(NULL, 'AWS Clean Rooms', NULL);
coalesce -------------- AWS Clean Rooms
Contoh berikut menghasilkan kesalahan karena tipe data bervariasi dalam daftar ekspresi. Dalam hal ini, ada tipe string dan tipe angka dalam daftar.
SELECT COALESCE(NULL, 'AWS Clean Rooms', 12);
ERROR: invalid input syntax for integer: "AWS Clean Rooms"